hacker news with inline top comments    .. more ..    12 Jul 2017 Ask
home   ask   best   2 weeks ago   
Ask HN: Why is Bluetooth so unreliable?
184 points by whitepoplar  5 hours ago   138 comments top 26
bjt2n3904 5 hours ago 5 replies      
This isn't the first time I've talked on this. I've had some experience with bluetooth on Linux, and as a radio guy. The answer is there are problems from Layer 1 to Layer 7, needless complexity, and design by committee.

Bluetooth is an EXTREMELY complex radio protocol on Layer 1. It's like a mating dance between scorpions in the middle of a freeway. High chance something gets messed up.

Layer 1 keeps drastically changing too. Bluetooth 1 and 2 use completely different modulations, and are not backwards compatible. Bluetooth 3 simply was an extension to 2. "Let's agree over Bluetooth 2.0 to use WiFi instead." Bluetooth 4, while much simpler, uses an entirely different scheme.

Instead of a "general purpose" wireless network like WiFi, Bluetooth tried to be application specific. Except the only profiles everyone wants are mice, wireless audio, and fitness trackers. If you look at the application layer spec, it reeks of design by committee. Everyone haphazardly jammed their pet projects together, and there are redundant and vestigial parts everywhere.

The Linux side of BlueZ is abysmal. Honestly, I don't even know how anyone does anything with Bluetooth on Linux besides a mouse and keyboard. And barely even that.

As much as I hate on the protocol, the Layer 1 spec is truly ahead of it's time, in some areas. Watching two radios frequency hop, and negotiate to avoid a congested wifi channel was unreal.

Duhck 3 hours ago 2 replies      
I've spent the better half of 3 years building products on the 2.4ghz spectrum (WiFi and BLE).

Most of the issues in this thread are related to poor hardware design more than a crowded spectrum. While the spectrum is in fact crowded in metropolitan areas, most Bluetooth communication doesn't require much bandwidth and can handle error prone areas with ease.

While the frequency hopping helps a ton on BL (and WiFi for that matter), the issues people outlined are due to:

1) Shitty firmware2) Shitty hardware

Antenna design is black magic and only a few firms in the US do it well. It took us almost 10 months to fully design and test our antenna assembly(s) with a very capable third party firm.

It took dozens of trips to a test chamber, a dozen computer simulations that take a day to run, and PCB samples that take days to verify. They have to be tuned every time copper or mechanical parts move as well.

It's a real pain and most Bluetooth products use garbage chip antennas and baluns or reference designs for antennas. This increases the sensitivity to failure and provides a generally shitty experience.

Most of your product interactions around bluetooth are budget products connected on one side of the equation (e.g. a $50 bluetooth headset). So despite how capable your Mac or iPhone is, if you have a garbage headset on the other side with poor antenna design, it'll be a disaster of an experience.

IgorPartola 4 hours ago 4 replies      
This is a daily goddamn struggle for me. My Macbook Pro routinely forgets about my Apple trackpad, and the only thing that fixes it is restarting the laptop. The sound system on the laptop often selects the wrong mic for the input when a BT headset is connected. My iPhone keeps switching between headset and internal speaker/mic when on a call. Pairing the same device to multiple hosts (laptop and phone) is like birthing a hedgehog backwards. And let's not forget where you try to initiate pairing from a laptop or phone instead of the device. Why even provide the damn buttons to do it if they never work?
linsomniac 1 hour ago 1 reply      
I gave up on Bluetooth at home around a year ago. Not sure what it is, but I'd pretty much have to put my phone right next to the bluetooth speaker for it it work reliably. Might as well use a cable.

I had high hopes for Google Chromecast Audio for my music at work and at home. Probably my fault for jinxing myself by asking "What could possibly be worse than Bluetooth?" Chromecast Audio has definitively answered that.

For one thing, you can't limit who can interact with the Chromecast. Anyone on the network can see it. At work, my music would usually pause ~4 times a day as someone else's phone would see it and connect to it. I'd have to set up a new wifi network that only I could use to fix this. Since I only listen to music a few hours a day, that's pretty frequent.

It also gets confused if I leave work and then try to use Google Play Music elsewhere: my Google Home in the bathroom will play a song and then stop, I think because "google play is being used on another device", but it doesn't tell you that.

Maybe I should just go back to using something like a Raspberry Pi with access to my music library, it still is mostly songs I have the CDs for and ripped, though I've added probably 50-100 songs over the last year on Google Play, my 600 CDs I have all in FLACs.

api_or_ipa 2 hours ago 1 reply      
I used to absolutely abhor BT, but in the past few years it seems to have gotten really, really good about picking up, and maintaining a decent connection. Since then, I've picked up BT headphones, BT keyboard + mouse (Apple), and a nifty little waterproof BT speaker. Now, the only issue I sometimes have is when I want to connect to a new host device. Other than that, BT has been really nice to me.
howard941 48 minutes ago 0 replies      
I switched from a bluetooth dongle of unknown provenance to a more powerful Zoom (brand) class 1 dongle and hung it from a usb cable off of a lighting fixture in my home office. I get complete coverage to a Jabra headset of a rather large screened in porch despite having to penetrate my pudding head, two interior walls, and one exterior wall. The class 2 dongle barely worked outside.
drewg123 5 hours ago 6 replies      
For me, the biggest problem with BT is that BT audio is almost entirely unbuffered. I wear a set of BT headphones connected to a fitness watch (Polar M600) when running. When the BT connection from the watch to the headphones is briefly blocked by part of my sweaty body (think arm movements when running), the BT signal is interrupted and the music cuts in and out with every stride. If BT audio could be buffered for 15-20 seconds, this would not be a problem.
Spooky23 45 minutes ago 0 replies      
Is it? I'm a pretty heavy user if Bluetooth in a few different use cases and it's pretty reliable for me.

Best way to improve reliability is to avoid dodgy or counterfeit radios in crappy electronics.

ComputerGuru 5 hours ago 0 replies      
A big part of the reason "Bluetooth" is unreliable is that there is no one "Bluetooth." Each manufacturer's implementation differs in strength and weakness, and depending on the potentially shoddy chips in the devices you are connecting to, a different Bluetooth standard will be used.

I have Bluetooth devices years old that I've never had problems with, and others that are a constant nightmare. The software stack behind the Bluetooth is also a major component in the reliability question.

moonbug22 13 minutes ago 0 replies      
You only need to look at the page count of the specs to know why.
evilduck 4 hours ago 0 replies      
I have a lot of gear in the Apple ecosystem that uses Bluetooth and I don't consider it unreliable at all. I use at least 6 different Bluetooth devices all day, every day (MBP, keyboard, trackpad, iPhone, Watch, Airpods, with additional car pairing, portable speaker and iPad pairings) in close proximity to a bunch of other developers behaving similarly. Looking around I can count at least 40 BT devices in active use around the office and I would still characterize my Bluetooth devices as more reliable than any wifi AP I've ever used.
80211 34 minutes ago 0 replies      
I learned a lot about Bluetooth with an Ubertooth Bluetooth dongle. It also let me realize how many security issues (side channel leaks, especially) exist that can't be easily fixed.
synaesthesisx 3 hours ago 1 reply      
Not 100% sure on this, but I believe devices utilizing Apple's W1 chip use a combination of Bluetooth + WiFi (WiFi for the initial handshake upon connecting probably or something like that). If anyone's ever used AirPods it's amazing how reliable they are compared to other bluetooth headsets.
linuxlizard 5 hours ago 7 replies      
Because it's not as popular as WiFi or Ethernet or USB. It hasn't had the decades of hard core, hard knocks field usage of WiFi/Ethernet/USB. So the chipsets are less robust to errors, are less sensitive to highly noisy environments. The drivers aren't as battle tested as the other connectivity.

WiFi in its initial days (802.11b) reminds me of bluetooth right now. Quirky, bad tools, weird errors. But WiFi caught on and manufacturers started throwing $B at R&D for better chips and better drivers for those chips.

Bluetooth just has a problem with scale.

AceyMan 3 hours ago 0 replies      
Disclaimer: non-technical anecdotal evidence here

I had a colleague for a time who's dad was a hardware engineer with Toshiba & worked with/on their part of the specification Working Group.

His pop said that the whole BT stack was unambiguously a steaming pile of poo from the get-go, and it was nearly miraculous it functioned as well as it did.

At that I had to chuckle, seeing how I'd wager that each of us have had enough woggy experiences with the tech to agree with the point he made so plainly.

But I do love the chosen icon & the history behind it, vi-a-vi the name ("Bluetooth"), so it's not all bad <wink>. ---

this was around 2010 or so, to add some context wrt the relevant timeline(s).

nthcolumn 1 hour ago 0 replies      
I have nothing to add only 'yes me too my how I have suffered', the countless crappy bluetooth devices I have connected and disconnected and hours and hours I have wasted trying to get them paired with various linux boxes, nearly all in short order choosing death rather than do my bidding. I am looking at one right now currently unconnected. 'Dummy device'. Why indeed.
js2 4 hours ago 3 replies      
The last few years, I have not had trouble with BT, but maybe it's because I simplified my use cases to ones which work after early failures. Here's what works for me and never fails:

- Macbook to Apple bluetooth mouse

- iPhone 6s to late model Mazda infotainment system

- iPhone 6s BTLE connection to Garmin Forerunner watch

mchannon 5 hours ago 3 replies      
Simple- it inhabits the same band almost everything else inhabits- 2.4GHz. To an extent, the reason Bluetooth is unreliable is the same reason most Wifi is unreliable in crowded areas. There's a lot of appliances that use that bandwidth over incompatible standards.

Even worse are the "spark" kind of 2.4GHz appliances that don't play nice, like wireless camera systems and baby monitors. If your strong-signal wifi or bluetooth keeps dropping, it's far more likely to be one of those at fault than anything else.

FRex 3 hours ago 0 replies      
Oh wow. And I through it's reliable. I used it only a few times on smartphones and laptops (I like my mice and keyboard with cables) but I still remember what a big deal it was compared to infrared and how mobile phones in early 2000s would lose connection and the only sure way to use IR was putting them next to each other on a flat table with the IR thingies of their physically touching(!).

That makes me a little less excited about my plans of getting Dual Shock 4 for my PC for gaming.

jonbarker 4 hours ago 4 replies      
I would buy a wireless audio speaker that uses NFC instead of bluetooth to connect to Android or iPhone. You would have to set the phone on the device but that would be a small price to pay if the connection were more reliable.
bhouston 5 hours ago 2 replies      
I never have Bluetooth issues in my Rav4 between any of my phones (ZTE, OnePlus), it is perfect always. I can not emphasize enough how amazing it is.

My and my wife's Fitbit have constant Bluetooth issues to our phones. This is completely and utterly annoying.

Driver related? Not sure.

gjvc 5 hours ago 1 reply      
From an experiential view, I say "crowded spectrum" My bluetooth keyboard takes ages to associate at work (which is close to a mainline rail station), but at home in the relative country, it works smoothly.
gargravarr 4 hours ago 1 reply      
Part of the issue is that bluetooth as a whole is nothing more than a wireless serial connection. It's the various protocols built on top of it that determine its stability. The Bluetooth SIG only really control the pairing between the two devices, a low layer. You're hoping that the company you buy stuff from has implemented the protocol correctly, over which the SIG has no control.
jdlyga 4 hours ago 0 replies      
I've always had trouble with bluetooth devices until I got AirPods. Whatever bluetooth setup they're using is very reliable. I use them with my phone, windows computer, ubuntu work machine, and I rarely ever have connection issues.
gdulli 5 hours ago 2 replies      
My company bought me a $150 pair of noise canceling headphones last year, it was my first experience with Bluetooth. After a month I was back to using the $10 earphones that I've had for over 10 years. It turns out reliability and convenience was more important than blocking noise.

To be fair there were problems other than Bluetooth. The headphones were trying to be smart, if they sensed you taking them off they'd pause the music for you. Except it didn't always work so instead of pausing the music when I took off the headphones, which is ingrained and reflexive and automatic and no trouble at all, now I had to pay attention every time to whether the auto-pause worked and then either pause myself or not.

And sometimes I'd adjust the headphones slightly to scratch my ear or something and the music would pause. Sigh.

baybal2 4 hours ago 0 replies      
1. fragile encoding schemes

2. fragile modulation techniques (uwb would've been a "final solution" to the problem, but died to patent trolls)

3. interference from wifi (try using bt mouse while downloading an hd movie)

4. because of three different "wire protocols"

But the upside is that BT super cheap to implement, and thus ubiquitous

Ask HN: How do you find good doctors?
3 points by pdevr  39 minutes ago   2 comments top
googletazer 37 minutes ago 1 reply      
Its more important to avoid to 20% of bad doctors then get the 20% of good ones. Anyone from the middle slice is ok as long as you respond to treatment.
Ask HN: What are some alternatives to Skype?
5 points by nafizh  1 hour ago   4 comments top 4
kiraken 16 minutes ago 0 replies      
I think that Zoom is a pretty great replacement. I used to use skype for some of meetings, but now i mostly rely on Zoom. https://zoom.us/
thsowers 42 minutes ago 0 replies      
If you're looking for cross platform, Rocket.chat[0] has face to face conferencing in browser via WebRTC, although you do have to setup your own server

[0]: https://github.com/RocketChat/Rocket.Chat

orionblastar 1 hour ago 0 replies      
There are some here:https://prism-break.org/en/subcategories/windows-instant-mes...

You didn't say what OS, so I assumed Windows. You want an IM/VideoIM that respects your freedoms as well as works better.

It is not free or open source but on mobile devices we use Line:https://line.me/en-US/download

We talk to family in Thailand using it instead of a phone. All in-laws and family in Thailand got an iPhone or Android phone that uses Line.

phaq 1 hour ago 0 replies      
Ask HN: How does one overcome the need for instant gratification?
174 points by sidcool  9 hours ago   107 comments top 45
strawcomb 7 hours ago 7 replies      
Some things I'd recommend, off the top of my head:

- Do not grab phone/computer etc. and mindlessly browse first thing in the morning. (Or before bed. Or at any time really.) But doing it first thing really starts your day on the wrong foot.

- When seeking to relax, do not mindlessly browse the internet/social-media/tv. Read an enjoyable book. This is an order of magnitude more fulfilling and beneficial to you. And genuinely more relaxing: screens are stimulating, and might let you 'relax' in the sense that you can momentarily be completely absorbed in something 'other', and forget your day to day life; but they don't relax you in the sense of being calm and contemplative (in general, in my experience).

- Reduce instant gratification from as many areas as possible. Do things that are rewarding longer term. Like reading, cooking, growing plants, hiking, etc.

- Cut video games.

- Block facebook + reddit + sites you waste a lot of time on, from main computer. Maybe have a secondary device you use to access these sites, for a set period each day (I recommend this mainly because it can be quite difficult to maintain a social life without facebook, (which is a terrible state of affairs)). Have days where you don't go onto these sites at all.

- Spend as little time on screens as is possible-> if you can work on paper do so

- have a regular exercise regime. eg. swim/run. Doing first thing in the morning really helps set your day on the right track, you have already exerted a good amount of self discipline, and achieved something, and this makes it easier to continue being disciplined.

- I recommend reading 'The Power of Habit'.

andai 7 hours ago 1 reply      
I'm surprised no one mentioned meditation yet!

A regular meditation practice helps with impulse control (sitting still for X minutes requires exercising self control) and that will help with resisting the urge to do tasks which are immediately gratifying, which will free up time and energy for activities which lead to long term growth.

Two things really helped me with meditation: setting a timer, and meditating every day.

Insight Timer (not affiliated) helped with both of these, keeping track of how many days in a row you've meditated, and allows you to set daily reminders.

There are also guided meditations available (in the app or YouTube if you prefer) if you are just starting out.

Best wishes!

Delmania 6 hours ago 0 replies      
You don't. There are some great suggestions in this thread. I would definitely recommend reducing social media usage, random browsing, picking up meditation, sleeping, and looking to learn new skills. None of those will overcome or avoid the need for instant gratification because seeking dopamine rushes is something we do no matter what. You need to change what gives you the rush. Define the end goal, break up the project into chunks, and then award yourself when you complete a chunk. This is how video games work, they divide up long-range goals into chunks, and then award you for those chunks. I'm currently training for my second-degree black belt. I have no idea when I will get it, so instead, I focus on daily practice which gives me the hit, which then combines with the long range pleasure of knowing that so long as I continue to practice and improve, I will get promoted.

Before you ask yourself how can I avoid something, it's better to ask yourself how you can use it to improve yourself. Fighting against something drains your willpower and you only have a limited amount.

kichuku 7 hours ago 4 replies      
I too second the recommendation for "Deep Work" by Carl Newport (http://calnewport.com/books/deep-work/ ). This is one book which is a must-read for all the current generation technology workers like us. I started reading this book about two weeks back and I have finished reading 90% of the book. Already I am seeing tremendous improvement in my day-to-day life.
matt4077 8 hours ago 1 reply      
Several thoughts, somewhat unsorted:

- There could be an underlying medical problem. Mild depression often has low willpower as the most noticeable effect. If it's not too much of a hassle, maybe get your thyroid checked. And whatever works for depression should usually work for your problem as well, exercise unfortunately being the most effective

- If what you're doing really doesn't interest you, it doesn't make much sense to see a pathology where everything is working as intended. Try something new (as a hobby maybe) that requires similar levels of engagement, and see if the problem persists. If not, it's time for tough decisions.

- There's a theory that willpower works much like a muscle. There's a book about that phenomenon, but it really doesn't have much more content than the last sentence. It's one of those results that I don't completely trust, but trying it out doesn't cost much: do anything that requires willpower regularly, and see if you improve. The examples from the book were really small interventions, such as brushing your teeth with the non-dominant hand. After three weeks or so, people were significantly more likely to successfully stop smoking, compared to the control group. That's a rather big effect.

- Try reducing your work hours. Being "always on" just drains your resources. Start with restricting your daily work hours to something like 3h or even less, and only expand again if you're productive in those hours.

- Somehow get your hands on ADHD meds (or, you know, the generic alternatives that fuel the bitcoin boom). You'll be as focussed as you ever wanted to be, and even a one-time experience can be helpful, by reminding you what it actually feels like to be "in the zone".

exabrial 6 hours ago 1 reply      
* Temperance: Restricting yourself in things. Try it: find a vice. Now stop doing it.

* Integrity: Doing the right thing, when no one is looking, or "when it doesn't matter"

Example: Yesterday, Amazon accidentally discounted a $3.5k guitar to $112. It was widely publicized and hundreds of them were purchased. Some people go theirs shipped. Is this right or wrong? After all, it's just "pennies" to a company like Amazon. Answer: yes it's wrong.

* Self-discipline: Do you work out? Force yourself to work out 2x a week. Stick to the schedule. Do you play an instrument? Force yourself to practice multiple times a week.

These things were beat into me as a kid by a pair of "tough love" parents. I cannot thank them enough.

degenerate 7 hours ago 1 reply      
Non-ironically, I watch this video every couple months to remember all my problems are first-world problems and I need to remember how good I have it:


That helps with the instant gratification problem for me.

bitL 7 hours ago 1 reply      
Well, think twice if you really want to go that way. From my own repeating experience, you spend years working on some insanely difficult problem, making you feel miserable all the time, then once you accomplish it you have your 15 minutes of chemical euphoria in your brain; in a week or so everybody around you starts treating it as nothing interesting anymore, and your bosses induce themselves even daily a similar feeling you had from your accomplishment by snorting cocaine, inflating their egos. In addition, all the "easy problem, low hanging-fruit" solvers that rank high in popularity contests will overtake you.
pjc50 8 hours ago 1 reply      
> taking the easiest solution that may solve the problem only partially, just for the instant gratification it gives.

This isn't necessarily bad. "YAGNI", after all.

In a work programming context, if you're trying to work up the motivation to do it properly rather than hack it, can I suggest a variant on "rubber duck debugging"? Simply find a more diligent co-worker and discuss the short and long solutions. When they say you should do the long one, agree with them.

Bang! Now you're socially committed to the non-instant solution. It's like having a running buddy. Or the old joke about why are mountaineers roped together: to stop the sensible ones going home.

erikb 8 hours ago 1 reply      
Addictions can't be unlearned, in my experience. It's more like training a muscle. And like with body training it's an additional habit. So if you are addicted to instant gratification when programming, you need to learn an additional habit of keeping to go on. The longer you do it, the easier it becomes. But it will always cost energy. And when you stop training that muscle restarting will become harder again.

Your question contains a second part: The question for motivation to continue training despite having no internal motivation. I'm not good enough in that department to give a short, precise answer yet.

ciaphascain 4 hours ago 0 replies      
Sometimes you have to harness your perceived weakness and turn it into a strength.

Sure, meditation and exercise and reading on paper are great overall lifestyle changes that will help in the long run, but that's not what I see you asking about.

Two things I think can help you immediately:

1) Timers. Set a timer if you're working on a hard problem. 10 minutes focus, 5 minutes to fuck around, rinse, repeat (work/break times are up to you, just start somewhere). Personally, I notice that the "it's only 10 minutes and then I can take a break and look at cat pictures!" is enough to temporarily short circuit the "instant gratification" I want. Before you know it, you'll find yourself annoyed when the 10 minutes is up because you broke your train of thought. Time to add another 5 minutes. Then 5 more. It's important to reward yourself for your work, even if it just means you went 10 minutes without checking Reddit.

2) If you can't shake the feeling and need to just solve the problem and move on, that's fine. Figure out a way that works for you to revisit the problem. Make a note in a journal? Give yourself a calendar reminder? Put in a ticket detailing what you still feel needs to be done so it can be added to your next agile cycle? It's up to you. It's okay to implement temporary/bad solutions and revisit later.

Don't be too hard on yourself and don't let anybody tell you that you're doing to little. Start somewhere an iterate. This is self-improvement and in this context nobody else matters but yourself. Good luck!

mxschumacher 6 hours ago 0 replies      
Don't watch porn (nofap). It is one of the worst habits of instant gratification
Powerofmene 4 hours ago 0 replies      
In order to stop the time drains in my life, endless browsing of the internet, venturing down rabbit holes when I would read something, etc. I had to initially set a schedule for internet activities. I had to do that for about a month in order for me to break the habit of distracting activities when I needed to do other things.

Willpower works for some, not for others, but the bottom line, willpower will only get you so far and if you keep testing it, it will let you down at some point. Get up from the computer and take a short walk, do some form of light exercise or maybe just meditatefor a few moments so that you can refocus. Sometimes just stepping outside for a couple of minutes to enjoy the refresh air and sunshine will let you go back to your project refocused and ready to get after it.

Find what works for you and when you find yourself drifting into things that waste your time, remove yourself for the reset that works for you.

jyriand 7 hours ago 0 replies      
1) You could try doing TDD. Each passing test will give you instant gratification. You could even try doing Acceptance Test-Driven Development. Basically you start by writing end-to-end test and implementing minimal code to make it pass. After that you will go one level deeper etc. I would suggest reading "Growing Object-Oriented Software Guided by Tests", this will give you a good overview of the method.

2) Also, if you can choose language to work with, you can try languages that allow you to work in the REPL. That way you can have instant feedback loop and feel satisfied even when you get some small functions working.

3) Pomodoro technique.

terrib1e 6 hours ago 0 replies      
By realizing that there isn't enough instant gratification in the entire universe to satisfy that void in you. But a less melodramatic way is to learn to frame things differently. I agree it's a rush to create something that functions even if it doesn't solve the problem in it's entirety, but why stop there? A polished product is much more interesting and satisfying than a sample of one. I don't think there's anything wrong in hacking together a program, in fact it's probably a great way to begin a project, but you'll feel so much more fulfilled and the high will last so much longer, if you take your basic machine and add jet engines to it. By doing things the way you are you've basically created the end result so now .you can work on refactoring the best way of getting there. A bunch of little dopamine rushes is fun, but why settle for that when you can bathe in perma-rush?
trevyn 5 hours ago 1 reply      
Something to consider: Trying to hold onto the systems and methods of the past is one way in which people lose relevance as they age.

Personally, I embrace the dopamine rush provided by small tangible units of progress, but I make sure that some of these units include refactoring and reworking design decisions, which also provide a tangible sense of progress. (And improves your skills in these areas!)

I believe this is an overall better system than trying to build a perfect artifact from the start -- too often you're actually solving the wrong problem, even if your solution ends up being elegant.

Scott Adams has some good writing on choosing to do the thing that gives you the most energy, which for me is very often something quick and dirty, and I love it.

laktek 8 hours ago 1 reply      
I recommend reading Deep Work by Cal Newport. There are some good techniques explained in it.
pookeh 8 hours ago 0 replies      
Solve the problem on paper including writing code, even if it is pseudo code. Once you have a good grasp of the problem and your hands are just twitching for a keyboard move over.

I find that whenever I am unfocused but have a big problem to solve doing the paper exercise for 30 min to 1 hour greatly help me focus throughout the rest of the day.


benmarks 5 hours ago 0 replies      
Simplest trick for me (and anecdotally for my peers in the developer world): track your time. Pomodoro technique [1] can give some structure if you're not used to it, with the main benefit (to me) that it forces you to quickly track & dismiss distractions.

[1] https://en.wikipedia.org/wiki/Pomodoro_Technique

DoofusOfDeath 4 hours ago 0 replies      
As someone who was diagnosed by with bad ADD well into my career, I know of three solutions:

(1) Have a work-related problem that absolutely needs you to take the approach you wish you'd be taking.

(2) Adderall.

(3) Vyvance.

EDIT: I've found (2) and (3) to be very helpful for impulse control, which might be an additional factor in your troubles.

DenisM 5 hours ago 0 replies      
Taking the shortest path is a very beneficial habit in a startup environment. That works for us really well - make a quick and dirty solution, manage expectation that it's not permanent, gather feedback, design and commit to a long term solution, implement it. When you promise a specific solution to a given customer the social obligation will help you stay on track.
swalsh 8 hours ago 0 replies      
You don't have an underlying medical problem, you're fine, you're just wired to want to solve the problem as fast as possible. It's not a bad thing. It's an awesome thing, that's what motivates you. I'd have you on my team! for every engineer like you, there's another who's wired to come up with the most insanely flexible solution possible. Sometimes the quick solution is needed, and sometimes the flexible solution is needed. If I was doling out work, I'd give you the important stuff that needs to be done now, and I'll give the infrastructure work to the other guy.
napperjabber 7 hours ago 2 replies      
Stop consuming sugar and caffeine. Fruits are a great suppliment until your body adjusts. You cannot have an abundance of attention without the fuel to power it. - It was one of the hardest things for me to do.
shoover 5 hours ago 0 replies      
Putting my phone in another room while I'm working does wonders.

For rationale to steele your resolve for pursuing your question, see this jblow comment for the ages [1] and the comments on Deep Work.

[1]: https://news.ycombinator.com/item?id=7789438

chairleader 4 hours ago 0 replies      
Some great tips and tactics here. I think it's worth describing the end-state you might be shooting for which those tactics can help with.

From what I'm reading, I think you're looking for the ability to deeply immerse in problems when the time is right.

When you're deeply immersed or in a flow state, your conscious and unconscious are completely aligned on a common goal. In fact, your conscious mind participates less and less in the tasks - only providing high-level strategy notions to your work, letting your subconscious tactical problem solving, recall and muscle memory do the work of getting the solution out into the world.

When it's working:

- your working memory (i.e. the classic 7+/-2 figure from psychology) is filled with the task at hand, and nothing else. Not only are you not thinking about other things, but you also have no doubts or second thoughts about what you're doing or how you are doing it.

- you have short feedback loops in place, letting your brain's pattern recognition work effectively.

- you have all of the tools you need at hand to solve the problem, and don't need to switch tasks to build/acquire them.

When you're in this state, you don't need a dopamine rush from anything else - you're caught up in in the problem, and don't need something to synthesize the excitement of discovery. You're getting that from the task!

Conversely, some examples of how it can break down:

- The steps required to reproduce your test conditions overflow your working memory, especially when decisions or analysis is required. Any conscious thought put towards the steps to recreate a test case is a task switch away from the problem you're solving. You might want to invest in scripts to automate some or all of the work.

- you're not sure if your approach is the right one. Now you're spending some of your problem solving energy on the "meta-problem" of how best to solve the problem. Take a moment to prove to yourself that the approach is at least worth investing in and then move forward.

Finally, know that deep immersion has its own drawbacks! Most importantly, while deep into solving one problem, it's easy to "over-invest" by going down the wrong path. For now, you might consider that a good problem to have and a sign of success at acquiring this skill. Honing the skill of choosing between the two approaches is level 2 ;)

maneesh 5 hours ago 2 replies      
Pavlok allows you to add a slight punisher (uncomfortable negative stimulus) when you do activities like load up Facebook/reddit, use your phone, or sit for too long. The whole design is structured around removing instant gratification.

Bias: I'm the inventor.


danso 8 hours ago 1 reply      
Why (e.g. for whom) are you solving these programming problems in the first place?
abbadadda 8 hours ago 0 replies      
I second the suggestion for DeepWork. The bit on "Embracing Boredom" is a really good way to exercise that muscle. Also, think deeply about the axiom "think more, type less." Ideally you're programming to create long-ish term solutions. Programming for the flow or gratification does not lend itself well to that. On the other hand, if you're in competitive programming, think about the gratification you can get by writing clean AND fast code.
dep_b 8 hours ago 0 replies      
Break big problems up in smaller ones. Make a checklist of the smaller items. Feel a rush of fulfillment every time you check something off
sharemywin 7 hours ago 0 replies      
Weird I'm kind of the opposite. I will procrastinate before I start something big usually a day or two and then it's kind of like my subconscious gives me the answer. And I'm like that's how I need to do this. This has to do more with design than programming tasks.
d--b 8 hours ago 0 replies      
I'd suggest taking more vacation. I find myself a lot more willing to take on bigger tasks when I come back from vacation.
voiper1 7 hours ago 0 replies      
When I face a problem that I don't know how to deal with, I try thinking about it. But that's a very unfocused, ungrounded issue.

I've found some help with typing out, free-flowing style: "What's the issue? Why is this difficult? What are my options? How can I fix it?". YMMV.

rajadigopula 7 hours ago 0 replies      
Simple. (Purely my personal opinion)

1) Divide the complex problem into small yet challenging chunks of problems.

2) Totally forget about the large/complex problem.

3) Focus/Solve one problem at a time, the way you already do.

4) In the end, ask someone else to weave the individual solutions to solve the original problem. (or DIY if you prefer to!)

LeicaLatte 7 hours ago 0 replies      
Growing older always helps with this.
brango 7 hours ago 0 replies      
Meditation. Coursera have a course called "Demystifying Mindfulness". Check it out.
treme 8 hours ago 0 replies      
I'd first like to recommend a book called "power of habits" which will help you better understand the mechanics of habit forming & reforming habits.

Deep work as mentioned by other poster is also another good resource for focus related topics.

amine_benselim 7 hours ago 0 replies      
one thing that really helped me is working out, when you are building muscles, the result is only visible after a few months, that is how i got to enjoy and grasp the benefits of delayed gratification
tomasth 8 hours ago 0 replies      
ZOOM IN.focus on the smallest details discernible.

that is what the idiom "put your nose to the grindstone" is about.

if you dont know/aware that the journey is long or even how long , time will fly.

you put one leg in front of the other , until you realise you finished something.

sjg007 7 hours ago 0 replies      
Solve the problem the first way.Take a step back and see how the solution might break or doesn't work.Solve the problem again.Repeat.
amorphid 5 hours ago 0 replies      
Learn how to have a feeling without acting on that feeling. It works some of the time!
sixo 5 hours ago 0 replies      
Do not have a computer. Just leave it at home. Nothing else works.
ycombinete 6 hours ago 0 replies      
I've been battling this with Vipassana meditation. I came accross it via Sam Harris. He posted a very nice little intro essay to it [0]; and there is a good podcast interview with Harris and Joseph Goldstein, on Harris's podcast[1].

Another thing is to get off of Social Media, immediately [3].

[0] https://www.samharris.org/blog/item/how-to-meditate

[1] https://www.samharris.org/podcast/item/why-meditate/

[2] http://matthewbrecher.com/socialmedia.html

bchjam 5 hours ago 0 replies      
iterate more, starting simple has its merits


Danihan 4 hours ago 0 replies      
j45 5 hours ago 1 reply      
Some ideas/tactics that might be of interest and have been useful to me or people I know:

- Find some short programming tutorials you can follow along on and gradually increase the length.

- Starting and stopping your day with the right routines makes a difference. I don't check email and use aquamail to not bug me during those hours. If somethings down I setup a different kind of emergency alert.

- Treat your senses a little different when you want to focus. Tools like white noise, ear plugs, 9th beet stretch of brain.fm can work well.

- Keeping a dedicated space for work has taught me to focus at that desk and play in other locations. I have the exact same desk and screen setup at my office and home. I keep it to focus.

- Log out of all social media apps. And news apps. Disable all notifications. Every app thinks it's at the centre of your life by wanting to gamification you so take it away. Only use the mobile web sites in your phone in a web browser installed only for it.

- Refuse to read or watch anything that isn't immediately useful for you and what you're up to now. Afraid you'll miss it or forget it later? Install diigo and keyword evening you read. You may find you rarely go back. Plus people don't mind filling you in when you've missed something.

- Manually block all news, social media sites in your hosts file (point everything to on your laptop. Seems to help a lot of folks. If the path of least resistance is increased just enough..

- Read books more. Finding good books will teach your brain the act of immersion, focus and flow. You know you've found it when you get slightly enraged by an interruption.

- Going for walks or bike rides help me. There has been some studies out linking walking, learning and problem solving.

- Take up some meditation as a form of settling your thoughts and focussing. Meditating can provide the same feeling of a buzz without any hangover, mixed with giving you the fresh mind and focus you woke up with.

- Use do not disturb and silence notifications as much as possible. It makes a world of difference.

- Install a plugin that limits the number of browser window and tabs you have open at any given time.

- Keep a separate device for reading, communicating/socializing. I use a kindle and phablet phone.

- Understand your time. Be ok with scheduling your day in 1 hour pockets, including fixed reading time, at first and working your way down to 15 minute increments when needed. Be ok with tracking your time for 30 days to observe what you're doing with a tool like harvest.

Hope that mught be of some use.

Some other things I try to remember:

Productivity is as much a muscle as it is a habit as it is a discipline.

It's possible to grow out of the chasing shiny things phase little by little by cutting out all the other places that contribute ute to a distracted state of mind.

We distract ourselves when something becomes a little more difficult, and it's an important thing to manage.

Don't pressure yourself, a little sustained improvement at a time will go way further in the long run.

Building discipline that you can selectively use to focus when needed helps get things done is the goal.

We have a fixed amount of attention each day. Many things are trying to steal it from us so we don't get much done.

Much of our digital experience has devolved into the mindless chasing for hits of dopamine of the good enough updates, links, articles, etc. It's not anyone's fault except the PhD's spending their life's work getting people to click on stuff. If you are, don't feel bad about it, just cut the jerks out :)

There's very little worthy of being an interruption in a day.

Managing focus means managing those hits of novelty and distractions.

The power of habit is a great book as someone mentioned.

IIRC, If will take a few weeks to start forgetting and form new habits according to this book. Starting small, and keeping a list of what your doing helps you come back to it when one strays.

Ask HN: Which book had the biggest impact on your personality?
4 points by lainon  1 hour ago   3 comments top 3
JSeymourATL 27 minutes ago 0 replies      
Feeling Good: The New Mood Therapyby David D. Burns > http://www.goodreads.com/book/show/46674.Feeling_Good
JPLeRouzic 1 hour ago 0 replies      
For 55 years at least it was "Stand on Zanzibar" by John Brunner [0].

Now I am really impressed by the Culture serie [1]

[0] https://en.wikipedia.org/wiki/Stand_on_Zanzibar

[1] https://en.wikipedia.org/wiki/Culture_series

Ask HN: What Happened to the Hacker News Colour Scheme?
89 points by CM30  3 hours ago   47 comments top 13
peterkelly 3 hours ago 4 replies      
It's a trick to get someone curious enough to make a post asking about the change, thereby triggering an extensive discussion about the important issue of net neutrality.
clutchdude 3 hours ago 1 reply      
You must not have the upgraded user account plan. It covers the bandwidth levies that certain high-traffic sites must pay to guarantee the full experience. Otherwise, ISP's have to degrade service for everyone to ensure "optimal" experience. /s

It's Net Neutrality and a call to action.

glitcher 2 hours ago 0 replies      
It is about Net Neutrality, the black bar links to https://www.battleforthenet.com/
Jaruzel 3 hours ago 3 replies      
Oh the bar is grey too?! I have it grey by default, so I know I'm logged in or not, so I didn't notice.

Edit: It IS my grey (#969696) - looking at the source, the topbar colour you set in your profile, overrides anything done in the css (which in this case is #828282) - So I don't see it anyway.... have I missed out on great non-orange bars in the past then? /sadpanda

dkonofalski 3 hours ago 1 reply      
Yes. If you click the black bar, all will be explained.
basseq 2 hours ago 0 replies      
These questions happen with the "black bar" that pays respects to a recently-passed tech luminary. Sure would be nice if there was a mouseover, tooltip, extra paragraph, HTML comment... something to tell the user what was up.

This is better than the black bar, as at least the link is changed. Otherwise it's: the bar is black. Somebody passed away.

seshagiric 2 hours ago 0 replies      
Totally with the story, I just put in my vote in support.

However the blacked out title is confusing. It is noticeable definitely but does NOT tell me to click on it, just looks like there is a bug. In fact I opened HN in another browser to confirm.

There should be an icon for net neutrality - like the pink ribbon.

rtx 2 hours ago 0 replies      
Solidarity with government regulation.
huydotnet 2 hours ago 0 replies      
Some lazy dev just threw out some error. Corrupted frontend developer #@)%@#*!
html5web 2 hours ago 0 replies      
Do click on the black bar!
EGreg 1 hour ago 0 replies      
It should have intermittent "hacker news down" pages showing up when you refresh, with a message that this is a show and asking you to refresh a few times, and then the page going away.

UPDATE: I see HN just did that. Got the "HN is down" page several times :)

That was quick!

throwaway7645 2 hours ago 0 replies      
Net Neutrality protest?
lossolo 3 hours ago 0 replies      
Reddit idea with logo is pretty good too to get attention. If you didn't seen it just visit reddit.
Ask HN: Why are we (developers) way overpaid for what we do?
7 points by bsvalley  4 hours ago   13 comments top 10
codegeek 2 hours ago 0 replies      
"All I have to do is to close a few tasks, fix a few bugs..."

This reminds me of a joke (or real event??) where an expert sent an invoice listed with the following items:

- Item: Fix xyz part : $50

- Item: Knowing what and where to fix: $1000

So as developers, we supposedly create value. Yes all jobs create value but the argument is that to become a good developer, it takes a lot. So you get paid the big bucks for knowing what to do. Same with any high skilled profession.

On a different note, I will actually argue that we are not as well paid generally. Yes compared to a receptionist, we get paid a lot more. But compared to the C levels or execs, we get paid peanuts. So, it depends where you see it from. Tons of good developers never get to 200K (even in places such as CA or NY). I know a lot of them personally.

corporateslave2 3 hours ago 0 replies      
The real issue is people thinking that they arent valuable enough to make 200k. Most other professional careers reguarly have this level of comp, doctors, lawyers, any job in finance, consulting, higher level management. Yet the value an engineer can provide is high levels of automation, they can build the backbone of a company. If anything, engineers are underpaid. At my current job, I tweeked a major Fortune 50 companies email marketing algorithm, gaining them an extra 1% in marketing engagement, generating easily in the tens of millions in revenue. Any other field would see a massive bonus for that. If anything, we are underpaid.
CM30 3 hours ago 0 replies      
Well, we're not all like that. The average wage for a developer is far lower in much of Europe or Asia that it is in North America, and in North America it's far lower outside of Silicon Valley.

Most of us won't get $200K a year as a developer regardless of what we do.

As for why people in Silicon Valley are overpaid for this work? Well, I suspect it's partly down to a bunch of factors.

For instance, things like rent are pretty high over there, so someone being paid a normal wage couldn't really afford to live in the area. So any Silicon Valley that can afford to pay its employees high wages will, just so they're not commuting miles into work every day.

Competition is important here too. If your competitors pay high wages, you'll also need to pay them in order to lure in employees. So with many Silicon Valley companies pay hundreds of thousands of dollars a year, their competitors have to follow suit not to lose their entire workforce.

Same with a lot of things like free food, transportation, etc. They know people look for perks when choosing a job, so offer them in order to be overlooked for a company that does.

That said, those things are not uncommon in other industries or companies. Whether a company offers free food, charges you for it or tells you to get it yourself from the local high street depends on the company. The latter is admittedly a tad more common outside of the Valley and US in general though.

And yes, there's likely a bubble aspect here too. Startups in the Valley are often flush with cash and finding it very easy to raise capital. So it almost encourages them to splash out money on things like wages and office perks.

Hope that helps!

BjoernKW 2 hours ago 1 reply      
Supply and demand. As an employee you very likely still get paid a lot less than the value the company you're working for extracts from your work or otherwise that company wouldn't be around for long.

It's a common fallacy to think that people - regardless of income bracket - are paid for their time and inconvenience rather than the value they create with their work.

This widespread attitude in turn probably is at least partially responsible for a lot of waste: Things like excessively long but utterly unproductive and meaningless meetings. Activities like answering emails all day while really accomplishing nothing.

Work is often perceived to be something that has to be cumbersome and awful in order to be real, worthwhile work. If it doesnt suck it cant be work, can it? Conversely, if it feels like 'work' it must be work, even if you're not creating any value in the process.

So, no unless you're cutting corners by intentionally creating low-quality work you're not an impostor.

Judging from the parameters you mentioned I presume you live in the Bay Area. Keep in mind that's probably one of the most expensive places to live in the whole world. A developer elsewhere might not earn half of what you make but he or she probably also has a much lower cost of living.

Finally, everyone who has the opportunity to work as a developer in an industrialised country certainly is very lucky but that doesn't mean you're overpaid or your work doesn't matter.

AngeloAnolin 3 hours ago 0 replies      
That is not really the case for each and every developer though.

The premise is that we seem to see things from our own bubble - like for example, in your case, you were lucky enough to land a great paying job and you correlate the amount of work you do with the amount of compensation you get and seem to think it is not balanced.

I know a lot of developers who are paid in the mercy of a whole lot of economic factors, and who are probably doing a lot more things than what their compensation pays them.

There's also the factor of the work itself - doing/making stuff that has never been done before, pushing technology capability to the limits, negotiating with your stakeholders, people and users. This is a whole ecosystem, where stress and pressure are the norm and that we as developers needs to be constantly learning and applying those learning every single day.

P.S.You might as well donate portions of your earnings to causes you believe in. Or save up for the rainy days. Or build a business where you can provide opportunities for others.

taylodl 4 hours ago 0 replies      
It's called a labor market. Currently the demand is outstripping the supply (more demand for developers than there are developers) and so the cost of the product (labor) is rising. The rising costs (wages) should encourage more folks to become developers and thus stabilize, or even lower, the wages. But as it turns out, it's not that easy to become a good developer so it's been difficult to increase that supply to meet the demand and this has been the case for forty years now - so I wouldn't worry about this being a "bubble" that's about to burst.
Powerofmene 3 hours ago 0 replies      
In short, the market drives prices. Remember, it is about supply and demand.

Also you say, you have to close a few tasks, fix a few bugs, and make sure I am not a jerk to teammates.....

Fixing a few bugs could make the company hundreds of thousands of dollars or even millions, it could protect trade secrets or protect personal information, it could make the jobs of others in the company faster or simply easier. It is all a matter of perspective. And doing it while not being a jerk is a plus.

PaulHoule 4 hours ago 0 replies      
I don't see it that way.

When Walt Disney became the highest paid executive in the U.S. a reporter asked him what he thought of that and he said "It's about time."

Many developers perceive they are underpaid, certainly many of us face competition from people who get paid $35k a year in developing countries.

The deeper problem in the industry is a rabid antiprofessionalism that means, among other things, you won't get anything consistent out of a $20k or $200k developer.

sharemywin 3 hours ago 0 replies      
Cause you probably live somewhere where the cost of living is astronomical and by 50 you can't find a job because your skills are obsolete.
AnimalMuppet 3 hours ago 0 replies      
A developer can in fact be worth $200K without being a fraud. They have to actually create value, though.

Is your team delivering value to the company (or, even better, to the company's customers)? Are you doing your part to help the team? If so, you may actually be worth that amount of money, without your employer being a fool, and without you taking advantage of anyone. (If not, try to make it so that you are.)

Note well: QA, for example, still delivers value to the company and the customers. "Create value" is not the same as "deliver features".

What are you doing for Net Neutrality Day?
4 points by parametrek  4 hours ago   3 comments top 3
godelski 30 minutes ago 0 replies      
Made a post on FB encouraging, again, my friends to message the FCC. I also checked the FCC website's comment list[1]. Strangely I didn't find my comment, so I submitted a new one. Anyone else have this problem?

Also, does anyone know the engine that the anti-net neutrality users are using? I see copy pasted comments that are anti, so I figure there are similar programs on that side of the isle.


nozzlegear 28 minutes ago 0 replies      
I haven't done anything with my sites or apps, but I called both of my senators (Chuck Grassley and Joni Ernst) to encourage them to support Net Neutrality. I'm also going to write a letter to the editor of my local newspaper, since word on the street says Congress-people pay a great deal of attention to newspapers.
muzuq 2 hours ago 0 replies      
I, personally, have not done much. Especially considering I do not maintain any websites, or have access to change our company website. What I have done is spread awareness throughout my circle of friends, and co-workers. Many have never even heard about net neutrality in any sort of way.

I am greatful to everyone who contributes to the fight, in a small way or a big way.

Fight on.

Ask HN: How realistic are the fears coming from the NN 'day of action' crowd?
30 points by Toast_  18 hours ago   6 comments top 3
microwavecamera 17 hours ago 1 reply      
Very, in my opinion. It goes beyond throttling, ISPs could also choose what sites they carry and what types of traffic they carry. It would create a backdoor in censorship laws and regulations. An ISP could use any excuse, such as cost, bandwidth utilization etc. to suppress anything they see fit. It goes beyond just websites, VPN traffic, TOR traffic, and similar privacy technologies would also be at risk. Think of the implications. Open-source software? Bitcoin and cryptocurrency? Torrents? What if ISPs decide not to carry the traffic or charge prohibitive amounts of money to carry the traffic? With Net Neutrality internet access is regulated as a utility, like electricity. Just like like a power company can't refuse to provide you with electricity, ISPs can't refuse to provide full internet access to you. Net Neutrality isn't just about internet access, it also protects our civil liberties and right to free and fair access to information. It also stifles innovation. If you're a startup, how could you compete with companies like Facebook or Google who can afford to negotiate contracts with ISPs and pay for full access? What if a company like Facebook uses their influence and capital to get ISPs not to carry sites critical of them or competing with them? How could Linux and other open-source projects afford to compete with companies like Microsoft and Apple? Those companies could certainly afford it. A handful of companies would control what you see and can access on the internet. Open access to the internet is vital to freedom and democracy.
cheald 11 hours ago 1 reply      
So far, every "day of action" banner I've seen has basically been pitched at mock "you've hit your bandwidth cap" or "your throughput has been limited" messages, both of which are in place today and unaffected by neutrality regulations (consumers pay for a line that is capped at a given level of throughput, is not guaranteed to deliver their top-end throughput, and is often capped at a maximum level of bandwidth consumed - wanting more costs more).

The messaging feels deceptive to me because it seems to be pitched with juvenile "you should be able to have as much as you want without having to care about price!" tone, rather than the more nuanced concern that monopolistic ISPs could promote or deny traffic in anticompetitive behaviors. That concern, while real, doesn't seem to have shown much threat of manifestation outside of a few edge cases (two that immediately spring to mind are Comcast throttling torrents back in ~'07 and T-Mobile not counting bandwidth consumption against quotas for near-edge hosted media from their their "Binge On" partners). It honestly seems to me that the number of "consumer-friendly" neutrality violations have outnumbered the anti-consumer ones in recent history - which is a concern in that it makes it harder for a startup to compete with an entrenched player, but that's WAY outside of any of the messaging being pitched to the unknowing masses today (probably because "companies giving you service perks for no extra charge is bad!" is a hard message to sell). Things like the Verizon/Netflix flap was a peering dispute, which isn't a new concern and probably isn't resolved to any real degree under neutrality regulations, but people still reference that as a flagship case for neutrality regulations.

There are some legitimate fears. Most of them haven't manifested, and are most robustly resolved through opening up competition in the ISP space, IMO. The messaging seems to be, in the majority case, unrealistic scare-mongering, and that leaves a bad taste in my mouth.

e59d134d 16 hours ago 0 replies      
It will make it harder for smaller and startups to compete with established players.

You can think of it as if phone companies grouping businesses in different buckets and then charging extra for better service. Small businesses will have to pay phone companies extra if they want their customers to call them.

Blind coders
16 points by lindybee  20 hours ago   4 comments top 4
ctoth 18 hours ago 0 replies      
My name is Christopher Toth, and I work at Charter Communications as a developer specializing in accessibility. I also create software for blind people [0]I am totally blind and would love to talk to your students. Email in profile.

0: https://GetAccessibleApps.com

progval 20 hours ago 0 replies      
Hi, welcome on Hacker News

To make more people see your post, you should prefix it with Ask HN: so people know it is a request, and make your title more descriptive.

For instance Ask HN: Looking for blind coders to talk about [the subject].I am not sure you can, but editing the content of your port to give more details about the topic, what your students do, etc. would be helpful.

blinddev 19 hours ago 0 replies      

I am a blind developer and may be able to help. Email is in my profile.

Mz 19 hours ago 0 replies      
I have forwarded your post to a small group I co-own aimed at helping blind developers solve some of their coding challenges. Hopefully, a blind coder will get back to you.
Ask HN: How can I get over my lethargy, lack of focus, and other problems?
58 points by mmsaint  1 day ago   57 comments top 32
alasdair_ 1 day ago 1 reply      
Medication may ultimately be the answer for you (I know you said you can't go there right now). For me personally, getting the correct medication was literally life changing.

That being said, I'd suggest being really, really specific in what you want to accomplish. Forget all the grand plans, just nail down one very small thing you want to get done and post it here (gives accountability) Also post the very first thing you need to do to get started on that thing. It may be something as simple as "open up my IDE on my laptop and create class Foo"

Get into a loop of tiny improvements. Make each loop only take a few seconds. If you are making a web page, get the simplest possible page up and running and then add just one more tiny thing to it and refresh the page. If it's something you can't see, create the simplest possible unit test and then code against that.

When you have so much stuff you want to accomplish, it feels overwhelming and distracting. Boil it down to one thing, anything, and start there. The same approach works for all kinds of stuff by the way - writing a novel? Just open your saved draft and add a single sentence. Exercising? Do nothing but put your running shoes on and step outside, even if you come back in right away. Trying to mentally plan the entire thing in advance is exhausting so don't do it, only do the simplest thing that you can possibly do to start - usually it's enough to do one more extremely simple thing, and another, but don't get ahead of yourself - you don't need to worry about any of that stuff right now, only the very first step.

afarrell 1 day ago 2 replies      
1) How much are you sleeping each night and what is your environment when sleeping? Do you wear a sleeping mask or play rain noises? Do you go to sleep at a consistent time each night? Do you use your bed for things other than sleep/sex?

2) If you record audio of yourself sleeping, do you snore loudly or stop breathing for periods of time followed by sudden snorting or rasping?

3) Do you have low Thyroid Stimulating Hormone levels?

4) Do you have recurrent nosebleeds or red spots on your skin?

floatingatoll 1 day ago 1 reply      
Be more specific. EDIT: Answering these questions will help you help yourself. I don't necessarily have any guidance to offer, specifically, but you should collect this information until it reveals something or nothing, and log that along with what you've already logged. IANAD but you knew that posting to HN.

What vitamins have you tried, at what dosages?

Does caffeine have any effect on you whatsoever?

If you drink a cup of tea right before bed, do you lose a night of sleep?

What habitual pattern did you maintain with 'exercise' and 'meditation' and for how long?

How soon during the day do you know it'll be an energy or a foggy day?

Can you read fiction on the foggy days? Non-fiction? Arxiv papers?

Do you consume added sugar in your everyday diet? Artificial sweeteners? "0g sugar, 20g fruit juice sugars" sweeteners (I'm looking at you, Whole Foods)?

Do you drink sweetened soda sugar, fructose, glucose, fruit juice, all artificial sweeteners, cactus juice, what the fuck ever is new this year? (If so, stop. Quit smoking cigarettes, stop drinking diluted sweetener, and get some exercise, or else you'll die of problems worse than feeling foggy!)

Do you snooze your alarm?

Have you researched the ebb and flow of cortisol throughout the day, beginning at wakeup?

What happens if you drink a half cup of 100% fruit juice (NOT orange, pineapple, or papaya!) the instant your eyes open?

How does a steak breakfast make you feel for the rest of the day? Or a steak dinner, the next morning?

Do you eat one large meal, two small meals, and some snacks each day? Do you eat around the same time every day? Do you eat every day at all?

Do you suffer weird problems that could be loosely classified as 'inflamed' or similar? Allergies, recurring ear-nose-threat issues, joint or muscle issues, etc.

KineticTroi 1 day ago 0 replies      
Well what kind of project are you trying to work on?

Sometimes we unknowingly build a mental block and self-resistance against working on projects that are too broad, too complicated, or even things that are just not interesting enough for our internal psyche.

For technical work, you have to focus of on your focus. I won't drive anywhere at anytime. For me, a single drive wrecks my concentration for the whole day. Also, stay out of phone use, the internet, and shopping. Stay out of mind numbing meetings and discussion groups. Diet wise, I could recommend simple things like apples, nuts, cookies, coffee and tea. As much as you would like. I could get the complicated stuff out of the way in 3-4 weeks locked in a closet with lots of privacy and bad personal hygiene practices.

The frills, database, and front-end stuff can be far more enjoyable and leisurely. You can even do those things at a coffee shop. I would considered that kind of programming as a psychological reward for doing the hard stuff.

Also, I'd investigate regulating your sugar levels through diet. That can certainly cause brain fog. People who turn to soft drinks for that quick fix, mental lift ultimately wind up in with bad focus and poor health.

scottbartell 1 day ago 0 replies      
Sounds like it could be ADHD, take a look at the DSM-5 Criteria for ADHD[0] (the same criteria that a doctor would use to diagnose you).

Here are the criteria for Inattention:

- Often fails to give close attention to details or makes careless mistakes in schoolwork, at work, or with other activities.

- Often has trouble holding attention on tasks or play activities.

- Often does not seem to listen when spoken to directly.

- Often does not follow through on instructions and fails to finish schoolwork, chores, or duties in the workplace (e.g., loses focus, side-tracked).

- Often has trouble organizing tasks and activities.

- Often avoids, dislikes, or is reluctant to do tasks that require mental effort over a long period of time (such as schoolwork or homework).

- Often loses things necessary for tasks and activities (e.g. school materials, pencils, books, tools, wallets, keys, paperwork, eyeglasses, mobile telephones).

- Is often easily distracted

- Is often forgetful in daily activities.

[0] https://www.cdc.gov/ncbddd/adhd/diagnosis.html

tcbawo 1 day ago 1 reply      
I'm not sure if you are fighting procrastination. But, in the last some of the things that help me is to have a keep a list and keep knocking off the #2 item. A lot of times, when I introspect, I realize that I was procrastinating due to fear (sometimes failure, sometimes losing a purpose). But, I think lists are habit-forming and will help you get and stay organized.

Also, seek out a mentor, coach, or someone to be accountable to. This will help keep you on track.

e59d134d 1 day ago 0 replies      
> I've tried all kinds of things, except professional help, which I can't really do right now because of reasons: vitamins, caffeine, no caffeine, exercise, meditation, not eating carbs, getting more sunlight. None of it works.

I am just assuming but perhaps you didn't try some of these long enough?I have read somewhere that it takes at least six months before benefits of meditation are appear. Probably same thing with exercise or vitamins too.

I had run into focus issues too, went to doctor and described it just like how you are describing. He told me to take vitamin D. And then recommended to take ADHD test & lift heavy (to increase testosterone as I was on low end). Only thing, I really did semi-consistently is taking Vitamin D almost daily. I do seem to have better focus now, but still it could be improved a lot.

m0llusk 1 day ago 0 replies      
What you need is purpose. Read Man's Search for Meaning by Victor Frankl and watch How to know your life purpose in minutes by Adam Leipzig. You are talking about all these things that you kind of do or whatever but if you were filled with purpose then there would be that one thing which you must do and the rest would fall to the side and become irrelevant.
smt88 1 day ago 0 replies      
HN isn't going to solve your mental health issues, especially if you have depression or an anxiety disorder. Mental health care is affordable in the US, Canada, and much of Europe, even if it's just a support group or a counselor.

It sounds like you have a proactive attitude about solving your problem and you've reached the limit of self care or amateur care. I really encourage you to see a professional.

DrNuke 1 day ago 0 replies      
Walking one hour a day is very good at restarting the body functions and having a routine can help immensely for work. So barring any underlying disease, I would start today from scratch and deliver a doable indie project in a week, without resorting to the internet for help. Rinse and repeat with a couple of longer projects in order to become 100% active again in a couple of months. Good luck and no sh*t!
tekkk 1 day ago 0 replies      
There's a huge barrier for entry in programming for beginners so don't take it too hard on yourself if you feel you don't know how to get started. If you are interested in learning programming I'd advise you to surround yourself with like-minded people who are also enthusiastic about programming and want to learn how to code. The place for me was CS department at University but I guess there's a lot of other places too.

For the energy part, a lot of comes from personal determination. For me I'd say programming always feels a bit tedious and boring coming back after a proper vacation =). What helps is of course gym and socializing about coding the right amount. It comes easier after you've established a routine and have a distinct goal to work on. But yeah doing it all by yourself might be too much, for me it was at least (and still at times is). Not knowing what to do was the hard part, after getting to know the basics you kinda free yourself to do whatever you want after which it's all about determination to do it.

And if it's depression well that's a different matter entirely. I hope not, it's a shitty place to be in. If you can get a free assessment at psychologist that would probably be a good idea. In that case getting around other people might be the thing. Exercise also is very important. Also only studying CS might not be then the best thing to do, a creative hobby might serve as a better outlet and help you get energized with the coding.

Can I ask what you're about to build? I can help you get started if it's something webby like eg. React/Nodejs. You should setup yourself a taskboard like Trello and start making tasks that are not too overwhelming and have them in for example sections like: User stories (abstract goals for what you are about to build: 'As a user I want to be able to log in' etc), Backlog (tasks, such as 'Create a React component for rendering log in form' or 'Study React course x'), Bugs, Done but untested, Tested, Merged and deployed. That should get you started for professionalish style of development.

throwaway90211 1 day ago 1 reply      
What you describe (specially the "mental fog" part) sounds like what happened to me right before being diagnosed with a gluten allergy. Most days I wasn't able to think straight/work &c, and I felt into a sleepy state.

If paired with some other symptoms like bone pain, insomnia &c, I'd recommend trying out living on no wheat, lactose &c. for some days and note if the mental fog goes away. If it does => doctor. If it doesn't => doctor anyway, since it seems you do have some allergy related condition.

uptownfunk 1 day ago 0 replies      
Forget programming for the time being, you're young.

Do something else that excites you.

If nothing excites you, go for a long drive somewhere to an interesting place, don't even plan it too much, just go somewhere new.

Mz 1 day ago 1 reply      
You need to figure out what is actually causing the problem. Start by keeping a journal. Include details about your diet in it, plus note when you are having a good day, etc.

Also, read up on sick building syndrome, regional air quality issues, etc.

But first you need to pinpoint a cause. You can't just randomly try health tricks and hope they will work. If you don't know why you are lethargic and lack focus, you can't fix it by randomly throwing darts at the health dartboard with your eyes closed, so to speak.

cbanek 1 day ago 0 replies      
First off, realize that pushing against a wall takes effort, but neither you or the wall go very far. If you aren't feeling it, and aren't productive at all, don't force it. Take a break. Do you feel better when you do other things? If you feel this way doing everything, it might be time to seek more help (I know you said it's hard because of reasons, but trust me, you're worth it.) Try to shake it up a bit, maybe a change of scenery (like library instead of Starbucks).

If the short term things don't work, I agree with other people's suggestion about journaling. Taking stock of your daily condition might provide clues, and at least gives you the feeling of doing something to take control.

The solutions you're talking about are good ones, but have you stuck with all of those? Sometimes these things take weeks or months to really kick in and help mood. Even most medications take a while. Give yourself some patience. And stick with the exercise, good diet, and routines - they certainly aren't hurting you!

danso 1 day ago 0 replies      
As others have said, don't ignore the possibility of an undiagnosed condition. But besides that, maybe it would help to join a group to have the structure, incentive, and (let's face it) pressure that can come from social groups, in the way that joining an exercise club or even hiring a trainer can be what gets people into a exercising for the long-term.

You didn't mention a job; do you have one? Or any other kind of structure to your day? I'm a fairly introverted person who likes to think himself above extrisnic rewards, but my life (both during, and outside of work) was never so focused and purpose-driven than when I had a job (news reporting) that imposed daily, hard deadlines. Moving to jobs where deadlines were measured in weeks or months had a somewhat detrimental effect on my ability to focus.

reese_john 1 day ago 0 replies      
If you are a man, I suggest you see a doctor and get your testosterone levels checked. Low testosterone can be an issue even if you are young, and is highly correlated with the symptoms you described.
xupybd 1 day ago 0 replies      
Hi there. Really simple one that you may be missing, hydration. I don't know why but I don't really get thirsty very often. Instead I get the symptoms you described. Normally it hits me the next day. I'll go a day forgetting to drink enough water and the next day I'm smashed. It took me a long time to notice the correlation.

Also you probably know this but coffee and alcohol don't hydrate very well. I used to think I was getting plenty of water, but as it was mostly coffee and the occasional after work beer, I wasn't really.

WheelsAtLarge 1 day ago 1 reply      
1) Make a plan, any plan. A bad plan is worth more than no plan. So do it.

2) Go to sleep and wake-up at the same time everyday.

3) Get out of the house

4) Spend a few buxs to take a community college class. This will force you to take action and get a kickstart.

5) Get professional help.

yomritoyj 1 day ago 0 replies      
My advice would be to talk to a friend. It is very hard to give advice over the Internet without knowing your personality and circumstances.

One thing which is impossible is to have a 25-year old version of a 8-year old hacker. A 8-year old has infinite time and no worries. At 25 conscious or unconscious worries about where your life is going may be holding you back. Integrating hacking into a realistic life plan that can fulfill your other needs might help free up your mind.

lhuser123 1 day ago 0 replies      
I would say talk to a psychologist. But that's too simple. Better advice would be, why even do that ? The answer is to understand yourself better.

Often, it's more complicated than we think. Probably a combination. And it's very hard to define the problem by yourself. The mind is not very reliable and like to play dirty tricks on us.

By talking enough about it, and receiving expert feedback, you somehow learn more about yourself. You're able to see the problems more clearly.

tokyokawasemi 1 day ago 1 reply      
Definitely get some help if possible. But in terms of better planning, here's what worked for me:

1. Set a goal or two for your week on Monday. 2. Then each morning over coffee each day, list out a few tasks (max of six, but even two or three is ok) that help you progress towards those weekly goals. 3. Do them one at a time, in order of priority. (If you still feel you can't take these on, break them down into smaller tasks if you can)

dmlote 15 hours ago 0 replies      
The message is clear and simple, but can you deal with it?http://home.nwciowa.edu/firth/kafka.htm
12s12m 1 day ago 0 replies      
One things that has helped me in the past is going anonymous and creating a project and just shipping features without thinking a lot about architecture and code quality. Making sure that I made progress every day.
hkiely 18 hours ago 0 replies      
Maybe you should look into ME/CFS and see if you have any of the other symptoms.
arrrvalue 1 day ago 2 replies      
When you wake up, do you sense you've had vivid dreams? Or do you just have a blank mind and headache?

Do your teeth bite together normally? Can you breathe clearly through both sides of your nose throughout the night?

jganetsk 1 day ago 0 replies      
Have you tried light therapy? It's great. https://re-timer.com/
hitsurume 1 day ago 1 reply      
What exactly are you doing when you get to starbucks? Are you trying to follow a tutorial? Read a programming book? Watching a video on programming?If so, try doing the same thing you're trying to do but with any other topic, like reading a fantasy book, or watching a documentary on the laptop. If the latter is more interesting then the former, then really you're interests aren't as strong as you'd like yourself to believe.
nyrulez 1 day ago 0 replies      
Try Emwave 2. It may work. If it does, it can provide a big boost to your mental/emotional setup.
aminorex 1 day ago 1 reply      
My first guess is inflammation of the microglia. Try a combination of galantamine and ibudilast twice daily, and avoid all gluten. If the brain fog doesn't lift, my diagnosis was wrong and you are no worse for it. If my diagnosis was right, it should make a very marked and phenomenologically obvious subjective difference.
bitwize 1 day ago 0 replies      
Gtfo of Starbucks. You won't get shit done there. Find a cozy corner of your room or apartment and set up camp.
SirLJ 1 day ago 0 replies      
Get laid
I've built a food delivery platform
4 points by resca79  4 hours ago   1 comment top
yishanl 3 hours ago 0 replies      
At first glance, it sounds like you may be overfitting an overly-comprehensive technical solution to an extremely cost-sensitive/archaic/offline-centered industry.

Explaining the stack you used to build this platform will likely come off as pure alien speak to the restaurant owners you try to sell to.

But that being said, I only understand restaurants in the US, and not Sicily.[0]

Research is a good place to start - first with your own product, then the larger market (how is it being used, how much value does it bring prestofood, how many orders do they process per day).

If the metrics give you conviction, start by talking to some restaurants.

There was a YC company (Trackin) that focused on this exact concept in the US that went through enough trouble that they've since pivoted to catering like Zesty, Zerocater, etc...

Oh, and effort != good product.

[0] Started/ran www.eatmise.com in SF, grossed 35K+, achieved ramen profit in 7 months solely on organic WOM.

Ask HN: Can you recommend an immigration lawyer?
11 points by otto_ortega  21 hours ago   9 comments top 5
JSeymourATL 5 hours ago 1 reply      
Contact the Lawyer Referral Service @ King County > https://www.kcba.org/lrs/index.aspx

The Lawyer Referral Service at King County Bar is the only referral service in the state of Washington that is certified by the American Bar Association

Spoom 5 hours ago 1 reply      
Try posting your scenario to http://visajourney.com/ . They mostly focus on family class immigration, but you'll probably get more targeted replies there.
pjohri 16 hours ago 0 replies      
Your company can apply for an h1, if you get selected in the lottery - you can get an h1, move tothe usa and your company can then apply for an employment based green card. Depending on country of origin - wait times differ.

Murthy Law Firm is good.

rahimnathwani 17 hours ago 1 reply      
Have you considered an L1 visa, which allows you to apply for a green card later?


meric 18 hours ago 1 reply      
I think if you're willing to go, Australia would let you stay pretty easy.
Ask HN: How do you manage your photo library?
7 points by jeffnv  23 hours ago   20 comments top 14
mcgrath_sh 4 hours ago 0 replies      
I use a combination of Dropbox and a nifty piece of software called Hazel on macOS.

The general workflow is that Dropbox automatically uploads photos from my phone and from my husband's phone to a "Camera Uploads" folder. My husband's photos are brought over to my Dropbox via a shared folder. Hazel watches the Camera Uploads folder and renames and then sorts photos into a directory structure of "YYYY > YYYY-MM." Each photo is names YYYYMMDDHHMMSS.EXT. It is incredibly easy for me to find any photo I am looking for. I am not locked into any software or file structure. I use Lyn.app or GraphicsConverter.app or even Finder.app to browse the photos. There are a couple of iOS apps that look into your dropbox directory and make albums out of folders.

So far, the biggest weakness of this setup is pictures that are not taken by me and the co-mingling of those images with personal photos. I need to be better about reviewing the monthly folder at the end of the month and placing those where they belong. Examples of the things that are in this category are photos of sports players/games/events, screenshots, memes, wallpapers, etc. I do have a separate but similar workflow for screenshots of video games, so that is not an issue.

I also had really poor backup habits when I was younger (yay for multiple copies of everything and just adding a random number to it) and have a huge chunk of photos that are all improperly dated for December 2013. This means that I have to spend a lot of time de-duping. I use DuplicateDetective.app to help with this, but photos are one area where I will not do that automatically. Sadly, I am missing a couple month chunk right around when my dog was adopted, but overall, my pictures from late high-school forward have survived pretty well. Once I have the old stuff mostly organized, this will self-maintain in the future.

I do not know the size of my photo library.

pesfandiar 21 hours ago 0 replies      
Short answer: AWS S3

I've written a lightweight JS app authenticated by AWS Cognito that uploads my photos to S3. It even has a thumbnail making Lambda function, and a comments sections for family and friends. I wrote about it here: http://www.pesfandiar.com/blog/2017/03/10/serverless-photo-s...

Powerofmene 4 hours ago 0 replies      
I was the worst with this. Until just recently my photos were scattered everywhere; phones, laptop, iPad, tablets, etc. I took several hours and loaded everything to Dropbox and then for 30 minutes a night for 4-5 nights I organized all photos into sub files within the photo file. Now I can find a picture in a flash rather than having to search across several devices.
Someone 22 hours ago 1 reply      
I don't do what I preach (I have 20k or so photos, 10k or so backed up to DVD, which I almost don't have a reader for anymore), but I think the best strategy is to let loose of the idea that you _must_ keep _all_ those thousands of photos. You don't live to babysit a photo-collection, and the more photos you have the fewer sentimental value each of them has.

One approach could be: buy a USB stick every few months and copy a few thousand random photos from your collection to it. If your hard disk dies, grab as many of those USB sticks as you feel like making time for, and restore the photos from them.

If you are really adventurous, put a quotum on the growth of your collection (e.g. 50 photos per month or x MB per month) and force yourself to throw away older photos if you want to keep more than 50 for a month. If you set the limit at x MB per month and really want to keep 100 photos, you can give up photo quality by recompressing some photos.

TommyBombadil 22 hours ago 0 replies      
I actually still use the discontinued desktop software Picasa as my local tool for bulk organizing photos into folders which are backed up to Dropbox. I can access at home on the computer with a synced Picasa folder and access those via the Dropbox app if needed.

From there I'll curate a gallery of particular trip or event and upload to Google Photos where I can more easily share with friends and family.

tmaly 9 hours ago 0 replies      
I have about 400GB of photos and video. about 260GB are on back blaze. The rest are on an external drive.

I do not have a great strategy to access them all in one place. I was thinking of possibly utilizing Amazon photo backup that comes with prime, but it does not do video.

Broken_Hippo 21 hours ago 0 replies      
I somewhat regularly back up my pictures onto an external hard drive. Additionally, some are backed up in the cloud.

My photos are generally divided into 2 categories: high quality artwork photos and everyday pictures, usually from a cell phone.

The art pictures are divided into "collections", named according to whim. Most files have names as unique as the picture. I also have art reference photos here, as well as a few cell phone photo collections: Things that look glitched, manhole covers, and sunsets behind a utility pole.

The others are badly organized. I usually have a "dump" folder with unorganized photos. I try to name folders so I remember, but I forget.

randack 22 hours ago 0 replies      
I have a library about 90GB in size currently, spanning about 12 years. I've played with all kinds of options, but I have a problem - I'm married to a luddite. My wife just doesn't get online storage and doesn't care about accessibility. She just wants to know where the most recent year's worth of photos are so that she can post to Facebook and create photo books.

After toying with Dropbox, Amazon Photos, Google Photos and a host of others, what I ended up doing was connecting a 1TB drive to a Raspberry Pi, then setting up a Samba mount on the local LAN. There's a read/write "dropbox" folder where we can upload photos manually, and I have a Python script running out of cron that sorts everything into date-based folders (https://github.com/andrewning/sortphotos). The date-folders are read-only on the Samba share.

I also have Dropbox configured on our mobile phones. Photos can be auto-uploaded to Dropbox, and I have CLI scripts that download them from there, and move them into the date-folders. The Python script de-dupes everything, and I move "duplicates" to an S3 folder where they're either purged after 30 days, or I'll review them to double check something wasn't ignored by mistake.

Everything on the 1TB drive is synched to S3 weekly, and moved quickly to Glacier. I also have a secondary 1TB drive that I'll sync to the master on a monthly basis.

So I don't get on-the-go access to my full photo archives, but I can move what I want to Amazon Photos if I really want something, and I've got enough redundancies to make me feel like I won't lose anything.

nibstwo 23 hours ago 1 reply      
Google Photos.
palidanx 22 hours ago 0 replies      
I upload my photos periodically to Amazon Glacier. I use the Windows Fast Glacier app as the interface to it. Glacier penalizes you heavily financially for retrieving the data, so it is more for the worst case scenario of losing all of my photos in my local harddrive.

Costs are about $2/month for about 100 gigs so far.

kleer001 22 hours ago 0 replies      
100G over 10 years.

Managed poorly. 1/2 of it Just slaved to Mac's Photo app. The other half in loose dated folders.

No tags, only a hand full of albums. No face detection. Scattered backups on DVDRS. Also backed up with the rest of the computer every week.

It's all coming from my phone camera, which I sync and cleanup every week or so.

swiley 23 hours ago 0 replies      
I don't :(

Maybe I should try setting up a cron job to rsync my DCIM folder. I haven't really heard of anything better that doesn't rely on some third party service.

akshxy 8 hours ago 2 replies      
Why nobody mentioned Photos by Apple?
Nadya 22 hours ago 0 replies      
I have a well-maintained, though not perfect library about 800GB in size hosted in a personal "Booru"-style software (MyImouto) with all images tagged. I use it for all of my photos - everything from my personal photography to silly pictures of cats.

Whenever I have a new image, I upload it and tag it.

I periodically back up the database and keep it stored on a separate drive. All of my drives are also backed up to Backblaze in the event my house burns down or all my drives get electrically fried, etc.

Ask HN: Do you suggest static site generators to your customers?
66 points by 12s12m  1 day ago   48 comments top 18
tombrossman 1 day ago 0 replies      
Yes, definitely, but I have no expectation that they will be the ones managing or updating it. My pitch is basically "I'll do the site and you can email me .docx, PDF, giant 20MB JPEGs, whatever, and I'll manage it for you".

This is even easier then something like WordPress for them, and much simpler for me. WordPress deserves credit for its ease of use for non-technical people, however I don't view this as a good metric for what to choose for a website.

I deliver the _site folder as a finished product and put it on Cloudfront with HTTPS. That's about as simple and unbreakable as it gets. Customers can then pay a monthly retainer or occasional hourly rates for updates. If they want the source files to run the generator on their own machine that's fine too, but it costs extra.

The model isn't that much different from a wedding photographer.

michaelt 1 day ago 4 replies      
I use a static site generator for my blog - but as I only post once or twice a year, I generally find I'm fixing broken static site generation about as often as I'm writing a blog post.

Using a mac? I hope you've got xcode installed to give you command line tools. No, you can't get that to work without logging into your Apple account. Right, now just install these tools using homebrew. Oh, homebrew's giving some git error? Sorry, you're on your own. Got homebrew working? Right, better make sure you've got ruby and gem and python and nodejs installed. Still doesn't work? Oh, that's because you're missing redcarpet, just gem install redcarpet. It didn't work? Oh, guess I actually need a development version of ruby.

Moved to Linux? Good news, there's a jekyll package right there. Bad news is it's outdated and won't build your site. Time to install ruby and gem then use them to install jekyll. Didn't work? Oh, you don't want that version of ruby, you need the development version, gotta have the right files so you can compile things as they download.

So no, I don't recommend static site generation to anyone who isn't a veteran error-message-googler.

rolae 1 day ago 4 replies      
There are now several competing nice services, that give you and your customer a UI to edit your static site with a webtool.

https://cloudcannon.com / https://forestry.io/ / https://www.siteleaf.com/

With all of them you can set up nice content type templates and get your client to put structured content.

edit: formatting

yawninganalyst 1 day ago 0 replies      
Many clients simply dont need a website let alone a framework such as jekyll / git-pages.Keep it simple. Knock up a Facebook page. Hey! We make pies, come buy some. Job done.
caseysoftware 1 day ago 1 reply      
Depends on the use case.

For a general site that's going to be maintained by a non-technical audience? Absolutely not. They need a WYSIWYG editor instead of markdown. "Deploy" for them has to be a "publish" button. Keep it simple with a self-updating WordPress on WPEngine or similar.

For API documentation sites, I use Jekyll and Slate all the time. They're going to be maintained by developers so markdown is easy. Version control is key. And syntax highlighting is important. We use Jekyll at Okta and it's easy but powerful enough to solve the big problems quickly and easily.

shakna 1 day ago 1 reply      
Yes. But they don't know it. They just know that their site is faster than their competitors.

I've got a smallish piece of JS that gives the client a WYSIWYG editor, which speaks to Firebase.

When Firebase gets an update, it triggers a rebuild.

Best of both worlds.

fimdomeio 1 day ago 2 replies      
No. It's very easy/cheap to setup something like wordpress. Teaching a client how to generate a static site is dificult and clients will have to go back to the documentation if they don't use it for a while. If you have a ui you only have to remember the /admin url and everything else is just looking at the screen and clicking the right thing.
Rjevski 1 day ago 0 replies      
Static site generators are too complicated for the general public. I usually recommend Ghost, which is like Wordpress but done right, without the security issues and the awful code.
garethsprice 1 day ago 0 replies      
Went through a phase of recommending SSGs for some client projects. Worked well for very small projects (landing pages or one-off microsites) or for clients where we had ongoing maintenance agreements. However many clients ended up feeling short changed that they couldn't update the site themselves (despite being told this up front and opting for SSG as the cheaper option). I'd not recommend it for non-technical clients.
alexcabrera 1 day ago 0 replies      
Plug: Our publishing platform https://proof.pub combines an editorial suite, API-based CMS, and Javascript/Sass SDK for creating static compilers using server-side React. When content is released through the editorial suite, we perform a static compilation and push the resulting archive to CloudFront. Works great, sites load quickly, and it all scales very simply.

A real-world example would be the First Round Review (http://firstround.com/review/), designed by our studio (https://marquee.studio) and running on Proof.

bigmanwalter 1 day ago 1 reply      
If the client is somewhat technical, and doesn't mind mucking around in markdown and the occasional html then sure, why not? But most of my clients prefer having a simple to use backend for updating the site.
laktek 1 day ago 0 replies      
I'm working on a project to make it easy to have best in both worlds - static page generation with a browser front-end. Take a look at the intro blog post for a detailed explanation of idea https://www.laktek.com/2016/11/29/introducing-pragma/

I'll be doing a private release in few weeks for the beta subscribers.

Symbiote 1 day ago 0 replies      
We have a custom SSG in Github. Any commit triggers a Jenkins build, which deploys it to our test site. Clicking the "Release" button in Github triggers a production build.

Non-developer staff have been fine with this, editing Markdown files within the Github interface and adding the occasional PDF. If something doesn't look right on the test site, they can ask for advice.

claudiulodro 1 day ago 0 replies      
I suggest WordPress using WP Super Cache. Best of both worlds. You get static pages with all the ease-of-use that WordPress provides.
tootie 1 day ago 1 reply      
Yes. I built a statically generated site to a Fortune 50 company. Not a microsite either, but one that was highly visible.
thangngoc89 1 day ago 0 replies      
Most of my customers are small business and they only update their website like 2-3 times per years. I built all of these websites with a static site generator and all text is extracted from a YAML/JSON files. If some customers requires editing the data themselves, I put a dead simple frontend on top of it for them.
cacozen 1 day ago 0 replies      
Definitely yes. It's performant and safe by default, and you have lot's of free or cheap quality hosting with CDN (example: Netlify.com).

The developer experience is great in static site generators such as Hugo, Gatsby, among others.

And finally, if your client needs to update content, you can use headless CMS such as Contentful, NetlifyCMS, Dato etc.

Jemm 1 day ago 0 replies      
I miss Apple's iWeb. Wish they would bring it back.
Ask HN: What did you do when your investors invest in competing companies?
22 points by bwang29  1 day ago   7 comments top 4
Powerofmene 4 hours ago 0 replies      
Provide what is required and do not feel it necessary to share things beyond that especially with regards to new technologies etc that you are developing.

Remember that your investor investing in a company that does something similar to yours is not necessarily a bad thing. Competition can be a very good thing. It fosters innovation and creativity, helps keep things moving forward and brings more attention to emerging technologies, to name a few, etc. That investment may be better for your company than your presently realize.

Remember, one boat is a cruise; two boats make a race.

amorphid 1 day ago 0 replies      

Correct me if I am wrong, but an investor's main interest to make money. They want you to succeed. If for some reason they are just milking you for information, remember you aren't under any obligation to tell them all your secrets. If the investor isn't a board member, you don't really have to tell them anything at all.

Don't stress too much about your investors. The only thing you can control is focusing on building a killer company. And you may find that your "competitor" sells a similar product to a different customer base, effectively making them not your competitor.

bkovacev 1 day ago 0 replies      
The investors always protects their own interest - remember that. They not only bet on the technology, but also on the people behind it. Depending on the agreement, the investor might not "owe" you anything. Thus, if they invested in another product in the same emerging market, they're trying to ensure greater % of success and ROI for themselves.

But, you do "owe" things to an investor - like reports, hard work etc. What you do, however, OWE to yourself is that you protect your idea/product to the fullest.

Thus, you only feed them what they need to know, thus disclose only relevant financial info. If they ask for other info be sure to be brief. Don't disclose the actual details about the tech behind it.

I assume if you know who they invested in, you know the amount and probably the terms, thus assess. More investments > higher risk > higher reward. If those investments were <250k, that's normal and I wouldn't be to worried about it.

thiagooffm 1 day ago 1 reply      
Get a loan in the bank and invest some in their business if you believe in the market of the product? :-)
Ask HN: How do you remain anonymous on the internet?
17 points by kyo3  1 day ago   11 comments top 9
mattbgates 1 day ago 0 replies      
I personally don't, but I'm sure it can be done. Here is just some things you can do:

1. Use a fake name.

2. Use an email that isn't personally identifiable.

3. Get yourself a P.O. Box and have everything sent there (for when you order packages on Amazon) (you can still be identified offline, as there's no way to get a P.O. Box nowadays without actual proof of identification and residency)

> USPS has good deals.. I'm paying about $5/month for a small box (purchase of an entire year) ... as a web app developer with a business, I really didn't want my home address to be known, so this worked for me to at least keep my address somewhat anonymous, but they are all mostly inexpensive, and even if it doesn't fit into your mailbox, they'll just hold it at the Post Office for you with a notice on your mailbox to pick it up at the counter

4. You will have to buy gift cards at Walmart so you can purchase at Amazon and other websites.

cypherg 1 day ago 0 replies      
Don't use any social media.

Don't use the same handle/screenname twice.

Don't allow javascript.

Do use unique 'throw away' email addresses.

Do use unique/long passphrases for everything.

Do use Tor browser with all plugins disabled.

Do use an OS like Tails if you're worried about leaking your true IP.

Bakary 16 hours ago 0 replies      
The other commenters have given you some good technical advice. privacytools.io provides a basic overview, which is commendable.

However, it's worth investigating in detail what exactly it is you worry about, and what privacy goals you have. Once you have a clear definition of those, write it down and think long and hard about whether it should inform your behavior. I used to be obsessed with privacy but after using this method I understood that I was in fact responding to a different set of emotions which manifested themselves into this. This led me to abandon my previous concerns and take the calculated risk between the convenience of internet services and the potential but nebulous harm that might come to me as a result of data trails.

Jonnax 1 day ago 1 reply      
Your browser leaks a lot of information about you:https://panopticlick.eff.org/Have a look at the detailed stats from your browser on that site.Incognito mode don't help for these.
jrnichols 1 day ago 0 replies      
A few good ideas:

don't use the same name on websites. unique username and strong password for each of them.

Use a browser like Brave if you can, or use Ghostery/ublock/etc.

Don't use anything Google at all.

Avoid Facebook the best you can.

I think the VPN is a good idea, and I haven't had one being marked as spam ever. PIA has been decent and has end points in the state that I'm in.

If you want to be a little more obscure, do all of the above but from a virtual machine running Linux. Periodically wipe & restore the virtual machine.

It depends on how anonymous you want to be.

savethefuture 1 day ago 1 reply      
It would depend on WHAT/WHO you are trying to remain anonymous from.
slvrspoon 1 day ago 0 replies      
try using Abine's Blur to create alias credentials EVERY time you sign up for something. www.abine.com disclaimer: i'm a co-founder.
Everula 1 day ago 0 replies      
VPN, TOR browser, no?
SirLJ 23 hours ago 0 replies      
Depends how paranoid you want to get: pay only cash, don't use credit/debit cards, wear sunglasses and a hat in public to avoid being "digitized" by cameras and mobile phones. Don't drive a car (use a cab off the street), don't use a cell phone and use only public computers (like in a library)...
Ask HN: What did you have to give up to be successful?
24 points by rm2904  2 days ago   20 comments top 11
Powerofmene 5 hours ago 0 replies      
Sleep. I chose to have kids and love my career. I find time to be creative and attended almost all of the events that were important to my kids. Wish I could have made the 2 I missed but they were okay with it.

I mainly gave up sleep and early on, virtually all recreational time. Now that my kids are older I make time for dinners and plays with friends and family. I do woodworking when I am stressed or just want to piddle around. But I can honestly say, I gave up more sleep than any person should.

lsiunsuex 2 days ago 0 replies      
We have definitely put off having kids for our careers. First, with my startup then with the wife going back to school to switch careers. I'm 37 now and she's 35 - If we're going to do this (have kids) this year or next is the time. Any later and I don't want to be that super old father moving my kid into a college dorm or worse, not living long enough to see it happen.

This all assumes we're healthy enough in that area to have kids. I know the older you get, the harder it is.

On the other hand, I'm open to adopting and she hasn't been so maybe if it doesn't pan out this year or next, she'll change her mind. If I can't have my own, the next best thing IMO is to change a child's life for the better and adopt.

perilunar 1 day ago 0 replies      
I'm beginning to think that I'll have to give up HackerNews. It's too easy to spend hours per day here instead of working on my side project.
tixocloud 1 day ago 0 replies      
Rather than give up, I would say it's about finding the right balance and knowing who you are as a person. I've drastically reduced the time I spend watching tv and movies but I haven't cut it out completely.

Success is also in your mind - if we keep moving the goalposts further away as you're approaching it, you may never feel fully satisfied.

The best way I found to get me willingly motivated to shift the balance of things was taking time to reflect on myself and my life. After that, I never felt like I had given up on anything.

The Dicken's Process is a take on this exercise: http://www.endlesshumanpotential.com/Super_Human_Development...

rl3 1 day ago 0 replies      
Should also have a "What did you have to give up to try and be successful but fail anyway?" thread, considering the fact most startups failmany without any funding.
mattbgates 1 day ago 1 reply      
I'd say I sacrifice some sleep in order for what I hope is to be more successful. I also think that I have sacrificed a bit of romantic time that I could be spending with my spouse, which definitely, I was a lot more the first year or two of our relationship, but in all fairness, at one time, I was probably too romantic, and she kind of "tamed" me, and each time she did that, I would just go off and do some programming to calm my mind.
12s12m 1 day ago 0 replies      
I have given up my free time which I used to spend enjoying movies, television etc,. I don't get that much time to do that. Most of my time is consumed in the startup that I am building, my kids and a bit of contracting work. But, I am happy :)
wolco 1 day ago 0 replies      
You don't have to give up anything but change the meaning of those things/concepts. A normal workday may be 12 hours for some but for you it might be 5.5 hours. You define success so you are successful as you want to be right now.
babyrainbow 1 day ago 0 replies      
First of all what do you see as "successful"?
SirLJ 1 day ago 1 reply      
To me having kids is being successful, the more the merrier... The younger you are the better, then you can enjoy early retirement, grand kids, etc...
AnimalMuppet 1 day ago 1 reply      
"Anyone can be successful by working half time. Half time is twelve hours a day, seven days a week."

I forget who said that, but I don't want to be successful at that price. In fact, right now I'd define "success" as "having a decent life without having to pay that kind of price".

What stack would you recommend for a simple web/mobile app?
6 points by jack_pp  21 hours ago   8 comments top 4
rahimnathwani 17 hours ago 1 reply      
If you'll use Django for the back-end, why not just build the whole thing with Django and render everything server side? Just make the web version mobile-friendly so you don't need apps. You can still wrap in Cordova, or have people add the web site shortcut to their mobile launcher.

If you need any truly interactive elements, you can add a bit of javascript directly in the Django templates, without needing a framework.

Thinking about it more: why do you need Django at all? It sounds like you're just presenting static information?

quantummkv 9 hours ago 0 replies      
For a simple app, cordova and react native would be overkill. Just think for a moment whether you really need a mobile app.

Unless you are going to do a lot of client side interaction on the mobile like ordering, i'd recommend you to create a simple website. Use foundation or bootstrap to create a simple, responsive website.

If you really feel that you requirements can change over time towards more heavy interactivity, use django to create a json api that would be consumed by a responsive react based frontend exclusively using ajax calls (Look to reddit's mobile site for an example). This allows you to scale to native mobile apps if the need arises in the future.

Since you have zero experience with web and mobile, jumping head first into react native and cordova and mobile would be a big folly. Make and ship a regular, responsive website first before even thinking about mobile apps. Shipping out small but working apps and improving on them is better that spending months on an all encompassing platform that only exists on paper.

dotnetkow 18 hours ago 1 reply      
Based on your main point, no experience, I have two suggestions: React/React Native for the framework approach, or something lighter: Simple HTML, CSS, and JavaScript. My background: .NET dev by day, Cordova dev by night.

React/RN and Ionic would be my top framework suggestions. With React, you have to learn their specific UI syntax/JSX, then React Native syntax. With Ionic, you need to learn Angular and TypeScript, as well as their specific UI syntax.

Another idea would be to start with simple HTML/CSS/JavaScript. These are the building blocks of the web and I've seen others struggle immensely when they don't take the time to learn them properly. This is what I did with my apps, currently using Knockout.js (two way binding is amazing), KendoUI Core (easy cross-platform UIs), and PhoneGap Build (cloud service to create native apps from web code). Incidentally, my Pluralsight course launches in a few minutes - http://www.pluralsight.com/courses/phonegap-build-fundamenta... - and is exactly meant for beginners to get their feet wet before diving into the more complex frameworks.

owebmaster 19 hours ago 0 replies      
React and React Native (web/mobile and native ios & android).
Ask HN: What do you listen to when you code?
43 points by kreeWall  1 day ago   50 comments top 41
vram22 1 hour ago 0 replies      
Rarely Heard Ragas by Vilayat Khan (sitar) is very good for listening to while working, IMO. Similarly other mild melodies on stringed instruments. Relaxes you while you work.




Vivaldi's Four Seasons is another good one for this.



Barclay James Harvest. The story of how they got their name is interesting :)


Bahamut 12 hours ago 2 replies      
Generally power metal here - Nightwish, Blind Guardian, Helloween, Gamma Ray, Angra, Edguy, HammerFall, Manowar, Kamelot, older Sonata Arctica, Demons & Wizards, etc.

Sometimes I'll venture into some female-fronted metal bands like Within Temptation or Delain too.

Regular heavy metal also is always fine - Iron Maiden, Judas Priest, some Dio.

Dream Theater is also quite a great progressive metal band, as well as their side project Liquid Tension Experiment.

Some solo guitarists make some great stuff - one of my personal favorites is Kiko Loureiro (Angra, Megadeth).

As far as non-metal artists I'll listen to while coding, one of my favorites is Gary Moore - he was an extraordinarily prolific artist, one of the most genre spanning more mainstream artists I listen to. I also like listening to Kate Bush as well.

I've listened to music of a lot of different genres too outside those whose artists I have listed - this might not work for everyone though. If I'm listening to something I like, I'm happy and generally avoid being distracted.

wristmittens 19 hours ago 1 reply      
Digitally Imported has a very wide range of, well, digital music.

They have some free ad supported streams but the annual cost of ad-free $70 is totally worth it in my opinion.

My current favorite channels are Chillstep, Liquid DnB, Nu Disco, Chill & Tropical House. Various levels of repetitive bass to keep your leg and fingers twitching, and differing tempos to either raise or lower your heart rate, depending on what you need in the moment.

Web Browser Flash or mobile apps. http://www.di.fm

RUG3Y 1 day ago 0 replies      
laurencei 8 hours ago 0 replies      
I love this Spotify list: https://open.spotify.com/user/ruhin94/playlist/0bG1EMQkukEeO...

Over 22 hours of powerful movie, game soundtracks.

Gets updated with new songs all the time.

b3b0p 5 hours ago 0 replies      
Depends on what I'm coding.

Sometimes I will put on old episodes of Retronauts (https://retronauts.com). Otherwise I will usually listen to OCRemix Radio / Rainwave (https://rainwave.cc), a SiriusXM station, or an album I'm familiar with.

allwein 7 hours ago 0 replies      
Anything in a language that I don't personally know. I find that the foreign language lyrics just pass through my brain freely whereas an English or Spanish song will sometimes grab my attentions because my brain is picking up the words. So lately it's been a lot of J-Pop and K-Pop. I used to listen to a bunch of German industrial music, but I've recently been learning German and so that's starting to interfere.
photik 11 hours ago 0 replies      
Chill stuff/Wave music




Can't listen if I'm venturing into new territory; learning requires quiet. Otherwise it's Wave music. eg wave, vaporwave, synthwave, witch house, future funk, future beats etc

lgunsch 1 day ago 0 replies      
I don't listen to anything when coding. I need the silence, and deep thought. However, when I'm doing trivial things, I listen to classical music. Usually "Essential Classical", or something similar, on Google Music.
mindcrime 1 day ago 0 replies      
It varies. Sometimes I listen to my "stock" music - hard rock and heavy metal of all varieties, with a special focus on 80's era glam metal, speed metal, and thrash metal.

Other times it's various forms of electronic music. House, trance, europop, Hi-NRG, synthwave/darkwave, etc.

And then sometimes I go with classical music. Bach, Vivaldi, Verdi, Wagner, Strauss, Orff, etc.

As far as specifics go, here's some stuff I've listened to lately:









One other thing I'll sometimes do is put on a movie in the background, with the volume turned down fairly low... just enough that I hear some babble and noise, but not enough that I get caught up in what's going on. This only works if I use a movie I've seen / heard many times, so I already know what's happening and won't get drawn into the story. So, something like The Matrix, Antitrust, Tron:Legacy, Hackers, Sneakers, The Social Network, etc.

vcanales 18 hours ago 0 replies      
Deep house, or other kinds of repetitive electronic music. Even though I'm usually a rock/jazz person, this music is perfect some times: very chill parties, dancing alone but surroundedby people, programming. Sometimes commuting.

It's relaxing, rather dronic but with enough variation to not be boring.

quantummkv 1 day ago 0 replies      
I generally listen to heavy metal, classic and hard rock that tends a bit towards prog with long sections and a bit of classical, epic feel to them. Something like Dio-era Rainbow, Led Zeppelin and Iron Maiden.

A few favorites:







mrnaught 1 hour ago 0 replies      
Hans zimmer instrumental.
neuroticfish 23 hours ago 1 reply      
Four Tet, Burial, Aphex Twin, -Ziq, etc.
peapicker 17 hours ago 0 replies      
Autechre.Monolake. Aphex Twin.Boards of Canada. Spahn Ranch. Tycho. -Ziq. Loscil. Plaid. Kangding Ray.Emptyset. Shackleton. The Black Dog.

Also an assortment of Psy-Trance, Coldwave, and Industrial generes.

olingern 22 hours ago 0 replies      
Pinback has recently helped me write a ton of code.

Tool, A Perfect Circle, Ashes Divide for a mellow, metal mood.

Vitamin String Quartet when I want something familiar, but classical in taste

Nicklecreek, Chris Thile, Old Crow Medicine Show, Punch Brothers for a folk fix.

Kid Ory when a need a New Orleans Jazz pick-me-up

sotojuan 7 hours ago 0 replies      
Classical chamber music, white noise, YouTube videos of people playing video games, the customer service people on the phone sitting 5 feet away from me.
foobarchu 16 hours ago 1 reply      
A little bit of everything...but when I really need to be productive I always put on the 'Tragic Boogie' album by The Life and Times.


It's been my go-to for 7 or 8 years now. Something about it just triggers the best of my skills to come out.

jabwork 20 hours ago 0 replies      
Music with minimal words (which I find distracting) but often with vocals. Usually an album at a time e.g.,

Ibiza chill sessions (annual albums) Melody AMThe altogetherLittle dragon (NPR remix)

a lot of electric guitar - Steve Vai, joe satriani

kagx 11 hours ago 0 replies      
When I want to be super productive I'm listening to The Lord of The Rings Soundtrack. It feels like I'm doing some epic coding things. Just imagine when you are doing git push while there is Themes Of The Rohirrim playing.
Finnucane 1 day ago 1 reply      
Mostly various forms of jazz--lately I've been on a roll with Pharaoh Sanders and Sun Ra. But the key thing is I find it distracting to hear voices while I'm trying to work. So mostly music with no vocals.
dubya 1 day ago 0 replies      
I have this weird memory of Tom Hudson, former Atari developer who I think ended up at Autocad, listening to the Rambo II soundtrack while developing. Not sure why this memory stuck.http://www.atarimagazines.com/startv3n3/programunderpres.htm...
dmach 18 hours ago 0 replies      
It used to have more but there is still a lot of choice. http://mikesradioworld.com/Cycle through BBC and Irish stations. Saving regular ones in Rhythmbox or VLC on my phone.
wreath 8 hours ago 0 replies      
Any sound my colleagues make.
faizmokhtar 18 hours ago 0 replies      
Daft Punk - Tron Legacy Reconfigured

Spotify Link: https://open.spotify.com/album/6yT9Q73eTMfx1aDWJiCVIt

Never fails to get me in the mood.

Edit: Add link to album

mtmail 1 day ago 0 replies      
Chicago's 911. http://youarelistening.to/chicago For some reason and in my timezone difference to Chicago it puts my brain into coding mode, sometimes hours. I doubt anybody else around me would enjoy that.
MrDosu 1 day ago 0 replies      
An orchestra of fellow developer fingers dancing on mechanical keyboards!
zumu 12 hours ago 0 replies      
Techno and deep house are my go tos. Generally, listening via soundcloud.
MithrilTuxedo 20 hours ago 1 reply      
cat /dev/urandom | sox -traw -r44100 -b16 -e unsigned-integer - -tcoreaudio synth pinknoise band -n 1400 200 tremolo 40 .1 gain 8
BooneJS 19 hours ago 0 replies      
Anything without lyrics. Classical music is my normal target, but some of Reznor's electronic soundtracks for movies works well too.
scottwernervt 20 hours ago 0 replies      
Podcasts in the morning and http://www.di.fm/ in the afternoon.
mattbgates 23 hours ago 0 replies      
Muchado in the Classic Rock and Techno/Trance genres, and 80s music, but sometimes outside of it too.

From Moby, Pink Floyd, Lindsey Stirling, Disturbed, and M83 are common.

TheAlchemist 1 day ago 1 reply      
This one works really well for me, when working (discovered thanks to HN !):https://www.brain.fm
randack 22 hours ago 0 replies      
Anamanaguchi or "Pogo" (https://www.youtube.com/user/Fagottron/) station on Pandora
cm2012 21 hours ago 0 replies      
Songs similar to the soundtrack from RWBY
Fjolsvith 17 hours ago 0 replies      
Tangerine Dream, Vangelis
junke 23 hours ago 0 replies      
My inner voice.
jerrylives 22 hours ago 0 replies      
Grateful Dead shows on the Internet Archive.

They're free. They're long so you don't need to be interrupted to change a track. The really spacey jams put you in a creative mindspace.

Plus, one of the songwriters founded the EFF!

SirLJ 23 hours ago 0 replies      
Sports Radio - you have to know everything about your favorite teams :-)
Ask HN: Reward for Patents After Leaving the Company?
11 points by wsr  1 day ago   12 comments top 5
patio11 1 day ago 1 reply      
Entitled is a funny word with two senses here. One is "Do I have a claim for compensation which the legal system will back?" and another is "Do I deserve do get paid this money?"

Legal questions are often best answered by a lawyer. The lawyer is going to ask to see the contract you have with your employer about this compensation. I do not have access to this contract, but I have a probabalistic guess for you based on standard practices in the tech industry: you do not, in fact, have a contractual right to payment for the company's patents. They're the company's patents, not your patents -- you signed an IP assignment agreement which made this absolutely, unambiguously clear roughly contemporaneously with starting your job. Your sole guaranteed compensation for any work was your salary. Your company owes you zero dollars and zero cents of remaining salary; they mathed the heck out of that when you stopped working for them and, after that check was cut, you were even. Your company has discretion in awarding your bonuses when you worked there; they're going to exercise their discretion in not awarding you bonuses since you do not work there.

Do you deserve to get paid the money? That's a rather different kettle of fish. To the extent that you're well-educated adult who can understand contracts presented to you in English, none of the above should come as a surprise. To the extent that one thinks that the purpose of the bonus is not incenting future behavior but rather rewarding past behavior, a reasonable argument could be made that since you put in the work you should receive the fruits of it.

madcaptenor 1 day ago 1 reply      
That's up to your company's policy. My company has a similar policy with a two-stage award, and you're not entitled to the award for approval if it's approved after you leave.

Do you have any former colleagues/friends at the company who could get you a copy of the policy?

nickm12 1 day ago 0 replies      
1. No, you are not entitled to the final reward (almost certainly).

Maybe your employment contract is different than other companies I have heard of, but this ought to be just like any other bonus (referral bonus, holiday bonus, etc.). When you terminate your employment, you are no longer eligible for employee bonuses.

smoyer 1 day ago 1 reply      
I also wrote a lot of abstracts for a large cable television equipment manufacturer. In some cases, Ididn't even write the application but they've continued to pay me both the filing award and patent award fees. I haven't worked there since 2010 but they're still paying me as an employee.
chrisbennet 1 day ago 0 replies      
The company most likely was banking on most employees never collecting the patent granting "reward". Like equity, it's a carrot to motivate/manipulate you, not a sincere "thank you".
Ask HN: Registration vs. Social Login
7 points by joshmarinacci  2 days ago   6 comments top 5
twobyfour 1 day ago 0 replies      
Give your user the choice. Personally I loathe social login ESPECIALLY for new sites because I don't want to give them any access to my social accounts. Because privacy. But social login reduces friction for a lot of users who are less concerned about privacy.
shishy 1 day ago 0 replies      
Is it possible to do both? I rarely use social login because I hate connecting things to those accounts. However, I know of many people who love the convenience in provides.
mattbgates 1 day ago 1 reply      
Make sure you limit your social media logins... something like LinkedIn and Twitter will do. Facebook is horrible in the fact that they update usually every few months to every year and sometimes it is not backwards compatible so everything breaks.

While I do like a social media login as a user; as a developer, I hate having all of them on the website. To even have their logo on your website takes away from your own branding. This is certainly controversial and many may argue with me, but why do I need to have some other major website logo one of my most prominent pages when my logo is what I want people to remember.

The other reason I ditched the social media logins: I was spending more time making sure these actually worked, and there's no way to test it without deleting the username from the database for each and every one of them every time. And what happens a year from now when you aren't constantly checking to make sure those work? You are likely losing out on potential new users all because they see: "Hey a broken website.. I'm leaving!" I got to see it personally on HN too: someone had just launched his product, and someone noted the social media for Facebook wasn't working. This issue right here has already probably taken away the focus from the actual product. Facebook wins again!

There is nothing wrong with social media, but keeping it simple would be great. Having yet another thing to worry about when your actual product should be the only thing you should be worrying about just adds to the stress.

However, in eliminating social media for my logins, I've done something else: I've eliminated registration pages. Instead, if you go and attempt to login with an email and a password, and it doesn't exist, it will be created. If you go to login with that same email and password, it'll log you in from then on out.

For a few web apps I built, I had both the registration / login pages, but why? It's just an extra page of clutter. It's just as easy to check if it already exists and to just create it if it doesn't.

I absolutely love the "magic link" which Slack does... onetime and it tries to keep you logged in for as long as your cookie remains.

The other method I've been seeing a lot lately, specifically with bank apps: 4 digit numbers with a cookie. So I think how that works logically.. a cookie is set to remember your username, and all you have to do is enter in your 4 digit number that you setup and you get logged in after entering in that.. after all, who can't remember 4 digits?

seanwilson 1 day ago 0 replies      
I would ask your intended audience. You're going to get a big bias against social accounts on here that you wouldn't get elsewhere.
owebmaster 1 day ago 0 replies      
As a dumb user, I prefer social login.As a internet savvy person I prefer username and password (without email). And as a software developer I also prefer social login if the system doesn't have a backend (it is becoming more common nowadays) and anything if you have a backend.
Ask HN: Can I hide an employer when applying for a job?
3 points by throwmeplease  1 day ago   7 comments top 7
Powerofmene 4 hours ago 0 replies      
I would probably not list it on the CV but in an interview be forthright about it. If it is not the right fit be prepared to say that and why. As an employer I would be impressed with someone who knows what they want and can tell me why their present situation is a bad fit. Explain it framed with what you are looking for rather than what they do that you don't like. That being said, if I found out an applicant had a job and never mentioned it I would have to wonder what else has been misrepresented and would wonder if I could expect honesty and transparency should I hire that individual. It is never a good idea to start what you hope will be a long term relationship with secrets or worse with lies. Even if you don't consider an omission a lie many people do so think carefully on what to say when it is brought up or how you bring it up if they do not, should you choose to disclose that information. It is truly a personal choice.
Mz 18 hours ago 0 replies      
Yes. No. Maybe. (To the question of "Can I leave it off my resume?" -- I would not hide anything. There is a difference.)

Different sources say different things about this:





taway_1212 6 hours ago 0 replies      
Some companies will ask you what you did during that time and will want you to provide a proof that you actually weren't working (crazy, but true).
icedchai 1 day ago 0 replies      
They might ask what you've been doing for the past month.Do you have a good answer?
paulcole 16 hours ago 0 replies      
Your resume is the story you tell a prospective employer to get an interview.

Does the story you want to tell include that 1-month old position? If not, don't include it! It's a resume, not a deposition.

davelnewton 1 day ago 0 replies      
I'm ambivalent. I've left off jobs that didn't really matter, including those of longer duration. It's never been an issue.
JSeymourATL 1 day ago 0 replies      
> Would a company find out...

Personal Disclosure is a desirable leadership trait. It's probably fine to leave it off your CV given the short tenure. However, once you start having conversations/interviews with a prospective employer -- do volunteer that information verbally.

Positive Spin: You'll want to share what you've learned in the past month and why that company turned out not to be a good match.

How to actually get a remote job as an intermediate developer?
94 points by kinetik-pro  1 day ago   69 comments top 25
deedubaya 1 day ago 6 replies      
I see a lot of devs trying to convert to remote positions who get frustrated that they haven't landed a job after days/weeks/months.

Going remote isn't as easy as what many devs are probably accustomed to, especially if you're new to the game (as the tech hiring market has been :fire:).

If you're going to go remote, you need to realize a few things:

- You're competing against waaay more candidates. You need to stand out, not just be another warm body.

- You need to demonstrate, without a doubt, that you can/have worked autonomously.

- You need to demonstrate, without a doubt, that you can/have been self managing in the past.

- You need to demonstrate that you provide a better bang-for-the-buck than anyone else who has applied

Source: Working and hiring remotely for the last 7-ish years.

k__ 1 day ago 3 replies      
I don't know a generic solution, I just can say what I did:

1. I quit my office job.

Worked there for about 7 years. I saved some money and got unemployment benefits (60% of my previous salary) so I had 1 year to do nothing.

2. I did some OSS stuff

OSS teams are almost all remote and they love contributors. So it's not hard to find some and ... well contribute?

It's an easy way to get into a remote team.

I didn't do it for long, because I don't like maintenance dev stuff, which working on Firefox stuff basically is if you a contributor for Mozilla, haha.

3. Do some remote studying

I started a master in computer science at a remote university here in Germany. They had two mandatory programming projects I had to do with a remote team of other students.

We did much coordination via slack, hangouts etc.

This was also a good way to get into the remote workflow.

4. Post your CV online and wait

I saved money for 2 years, so after one year of OSS and remote projects, I posted my CV on some recruiting sites (Angellist, Stackoverflow, etc.) and waited.

Took 3 months till I started my first remote job. Talked to 5-6 companies. Some never called back, some took 2 months to tell me they want/don't want me.

5. Worked remote for 2 years

I worked remote for 2 years in a startup that was about 300km away from me. Went there every 2 months for a day or two. They were rather picky with their remote employees and always tried to persuade me into working in-office. One day they they lost a investor and had to let a few people go, since I was the only remote guy left, I guess they simply wanted to get rid of me, haha. So I got fired.

6. Started freelancing

With >2 years of remote experience and >10 years of general developer experience, I started freelancing.

Got 2 projects. One I found by pure luck online in some project small directory and one in the company where my girlfriend works. Both don't care how and where I work.

codingdave 1 day ago 0 replies      
Honestly, I didn't even know my first remote job was going to be remote. I applied for it like any other job, and it wasn't until the end of the 1st phone interview that they told me it was a remote position. Their take on it was they wanted people applying because they wanted the job, not because they wanted remote work.

In other words -- if you are looking too hard for remote work, that could be exactly what is holding you back. Look for the jobs that match your skills and background first. Then from those jobs that you know are a good match, prioritize the ones that are remote.

jahbrewski 1 day ago 0 replies      
Network. Getting a remote job is similar to getting any other job, and people hire those they like and trust. If the term "networking" scares you, just think if it as making friends. You can do this any number of ways: participating in online forums, attending meet ups, engaging people on social media, etc. Figure out where the people that are doing the hiring for whatever position you want are hanging out and just be friendly towards them. That's my 2 cents!
ninjakeyboard 1 day ago 0 replies      
Specialize - how can you compete in a market of PHP backend devs when you want to work remote?

Be a Distributed systems specialist.Or a machine learning guru.write a book, go talk at meetups and get them posted online. You need a differentiating factor.

If you think people are going to trust you to work remote because you have 3 years of PHP backend experience, you're wrong. You need to be trusted in the greater community, to have presence. If anything you should be landing gigs through referrals, not applying with your CV. So how do you get from point a to b? network. Meet people. Go to lots and lots of meetups and talk at them.

apineda 1 day ago 0 replies      
In my case I freelanced/contracted for 2 years before applying for a full remote gig. Those contract gigs gave me a diverse set of skills to show off on my resume. It did help immensely that prior to those 2 years freelancing I worked for 3 years as a intermediate dev for a company that in the last 6 months of my time there went into remote friendly. I took that opportunity to travel to Europe for 2 months which got me in the front page of one of our national newspapers. That factoid that I include in my resume catches a lot of attention and engenders a lot of trust. I've been working remotely for 6 months now a this new gig and it's been great. :)
tluyben2 1 day ago 0 replies      
Not sure if it works everywere but working on site for company and then discussing, after a few months, if that would work remotely, seems to work for friends of mine. I never had an on site job in my life (I am 42) and I try to be good at things that are hard to find. As PHP webdev, most companies I know would hire you if you reliably get shit done. Reliably churn out results 6.5 hours per day for 5 days/week. Not many people can do that; actually I meet very little who can. A colleague of mine makes business dashboards in PHP: he creates and maintains enormous heaps of the most boring stuff. But he does it, day after day, year after year and that is worth a lot. Adhd coders that want to code in some new thing are more common, as are stuck coders who have the productivity of a snail and need a lot of handholding. Just sit and do it is worth a lot but you need to get your name out and that happens when you work onsite first or are able to market yourself online for that role.
kinetik-pro 1 day ago 0 replies      
Awww this feels like a fresh shave, so many answers. Thanks a lot!

A month ago I didn't even have any web presence because I didn't need it. Since then I've polished my CV, made web portfolio, and every few hours I check each site that posts Remote/Freelance jobs. . .

eddd 1 day ago 0 replies      
Relocate to a tech hub (Dublin in my case) and find a job where working remotely is possible, but be on the site for a few months to prove yourself that you are effective when remote. Start full time on site and gradually move to be remote.
ptasker 1 day ago 0 replies      
Yep as been mentioned, it's obviously a lot more difficult to get remote gigs. I probably applied to around 20 places over the course of 6 months. Some I heard back from, some I declined, and most I never heard a peep. I've got almost a decade of experience too, but it's just that competitive.

- You need to stand out, have a decent Github profile and/or solid code samples that you can share

- Demonstrate the ability to work autonomously

- Be patient, it takes time.

It's also worth mentioning that if you do get rejected ask them what you can work on. Helps to know what you can do to bet better and get a remote gig later!

Source: working remote for the past year

etjossem 1 day ago 0 replies      
Work for a company that has several offices that are geographically spread out. This is a good indicator that the company has already developed the necessary prereqs (good code collaboration tools, everything is a videoconference by default, annual all-company occasions, travel policies that make cross-team sessions easy) to accommodate remote work. Once you know they have the pieces in place, remote work is a really easy sell. Sell it to your manager/director, not HR.

I would not want to work remotely for a company that hasn't gotten used to distributed workers yet.

_ao789 12 hours ago 0 replies      
To be honest, this is actually a very interesting post and question. As even myself (fullstack dev for over 15 years) has tried to do this and failed. I therefore tend to move between fortune500 companies and make as much money as possible while contracting so that I can (in a while) create my own 'remote company'.I just decided that given how much of a challenge it is to get decent remote work, perhaps the best option is to create my own. Anyone interested in joining me in this venture?
jbuss 1 day ago 0 replies      
I have worked remotely for just about 1 year right now. This answer may not please you, but I became remote by starting on-site for the company I now work remotely for.

After about 2 years of working in the office I told my manager that I would be moving to another state and that I was interviewing for remote positions. I also said I would stop interviewing if they gave me the ability to work remotely, which they did (and I was very, very happy to stay). It is going to be difficult to find your first remote job, but this is how I did it.

savanaly 1 day ago 0 replies      
I know this probably isn't the route you can go down, but I'll share my story since it's one more data point.

The company I'm working for is fairly distributed across the globe, and a lot of the computer engineers are part time remote (three days at home, two days at office, say). But typically no one is fully remote at this company. I came to work on site at a city where they had an office and a few employees but it was a satellite office and I worked there for a year or so. Then the boss that was managing that office left the company and they decided to let the remaining workers from that city go full remote (it was just two of us and they didn't want to continue paying for an office for just two of us). Since I was going to be full time remote anyways I kept working for them but I can live whereever I want so I just relocated back to my hometown.

I did have to push at one or two points to ensure I ended up full time remote, but mostly it was luck, in other words. This company knows I'm a good worker and responsible from my year working on site so that may be why I can get away with the full time remote whereas for new people joining a company I can see how it would be a hard sell.

kejaed 1 day ago 0 replies      
I've often thought about starting a job board / remote contract hiring firm specifically for this area. Pair people who are looking for their first step into a remote job with companies that are willing to test people out a bit for perhaps some discount or some other reason. The firm could help screen applicants for remote suitability, train them up a bit on what it really is like to work remotely, and then pair with companies. The firms would understand that while the worker may not have worked remotely before, they have been screened and are willing to give it a good shot. Thinking maybe a 6 month contract to start and then the option to turn permanent.
vwochnik 1 day ago 1 reply      
Work in the office and demonstrate that you are competent and can work autonomously. Then ask if you canwork remote. This worked for me.
namanyayg 1 day ago 0 replies      
What efforts have you actually made? How many jobs have you applied to? Have you polished your online portfolio and CV the best you could? Does googling you get high-quality results across various social media/news outlets?

The above are just a few questions to start off with. You'll find better answers once you give a better idea of what you've got going and what you're already doing.

caffodian 1 day ago 0 replies      
It was mostly persistence and luck in finding a position that matched my existing skills and interests. You'll often have a code screen as an early step (because remote jobs get hundreds of applicants in days), so getting good at those sort of problems can be helpful as well.
Prizewinner 1 day ago 0 replies      
Look for keywords like lean and agile to find tech companies with remote work options. And keep in mind that if a posting makes no mention of being remote, chances are that it isnt.
deft 1 day ago 2 replies      
Good question, I have a bit less experience but am looking for the same thing soon. I have no idea how to find one. Not even sure where to look.
kaiku 1 day ago 0 replies      
What have you been trying so far?
tarr11 1 day ago 0 replies      
A good way to get a remote job is start local (for at least a year), then move.
njsubedi 1 day ago 0 replies      
Shout me out at my username at yarsa dot io. I'll see what I can offer.
Nadya 1 day ago 0 replies      
I worked on-site and became a Very Valuable Individual. I then told my manager that I'm moving out of the country and would love the opportunity to continue my work remotely.

In other words, I controlled more bargaining chips. I feel that is going to need to be true for any remote position. You need to be experienced and valuable enough that letting you work remotely is worth having you over someone on-site (for non-remote cultures).

For remote-cultures, the talent pool interested in remote work and the sheer number of people interested in it makes it far more competitive. As deedubaya said in their earlier response. You need to show without-a-doubt why they should choose you over anyone else. The competition is more fierce.

nullundefined 1 day ago 0 replies      
Do most remote job interview loops include whiteboard-esque coding challenges, or more focused on soft skills and project/contract based assignments to assess your skills?
Ask HN: Why can't OS have dedicated cores and memory?
10 points by uptownhr  2 days ago   12 comments top 7
rb808 4 hours ago 0 replies      

In my experience we used affinity with older CPUs to improve single thread performance. Recently it doesn't make much difference.

detaro 2 days ago 1 reply      
There are a lot of issues where dedicated cores don't help - e.g. locking issues (see the discussion today about windows and chromium builds)
davelnewton 2 days ago 1 reply      
You can, at least in Linux. But in general the OS will do a better scheduling job than you will.
LinuxBender 1 day ago 0 replies      
This isn't specific to your question, but I have VM's that have 6 logical processors. I use taskset to set the affinity of all OS processes to logical proccesor 0. This doesn't work for some kernel threads, but it works for most processes. I then give haproxy a number of logical processors, or balance based on what is running on that VM.

On physical hardware I would use NUMA regions per set of applications as well to optimize the use of CPU cache and get lower latency to memory, but the overall memory availability will be reduced. This is done on some latency sensitive applications.

You can do similar things in Windows. There is probably a way in Mac, but I have never tried.

As others pointed out, there are many cases where doing all of this won't help, so it really depends on the problem you are trying to solve, or the optimization you wish to accomplish. There are certainly no one-size-fits-all solutions.

LoSboccacc 2 days ago 0 replies      
Mostly because the os needs to coordinate everything and not all operations can be interrupted. Operating system maintain each program illusion to be alone on the hardware, virtualizing disk transfers, memory mappings, display regions and all the other hardware. Some operations once queued and dispatched need to complete before other operations can be accepted - that might happen for example when the os is figthing to access a memory page from disk but the disk is busy in a large dma transfer - then the illusion of being alone comes crashing down and no clever scheduling can fix it, because a class of operations without a guaranteed time constraint exist on the ibm pc platform.

Without a hard real time guarantee from the hardware, everything built on it cannot provide a guarantee on dispatching only the exact amount of operations that the system can handle.

And that happens even before accounting that the os or some driver within may have some cpu locking going on.

uptownhr 1 day ago 0 replies      
Feels like there isn't a solution using current OSes.

Why does CPU locking exist? I'm sure this is pretty technical question but if anyone has a dumb answer for me... Is this something impossible get rid of? Can it be scoped to a core and not the entire CPU?

zamalek 1 day ago 0 replies      
iOS supposedly runs the UI thread at maximum priority on phones, which is similar to what you are suggesting here.
Ask HN: What are the best books you've read that few others have?
58 points by chrisherd  1 day ago   59 comments top 33
observation 1 day ago 2 replies      
The Book of the New Sun by Gene Wolfe.

It's hard to describe. Rather, the story is easy to describe: it concerns the travel of a man from a future age. Nothing is what it seems.

There was a moment when I realized "Oh shit. This is real." The book may be fiction but almost nothing about it is fake. The Big Questions, in History, in Philosophy, in Politics, in Theology, in Technological Progress, in interpreting reality, it's all there.

Most non-fiction work of fiction I've ever read, and the best one, above Tolkien, above the Bible, it towers above all texts I have read.

It will take multiple reads to understand what it is saying, different parts will appeal to you each time.

In terms of the people you know: imagine that Stewart Brand, Peter Thiel and Christopher Nolan somehow had a lovechild - it would be The Book of the New Sun.

phlipski 1 day ago 0 replies      
Cradle to Cradle: Remaking the Way We Make Things

Very thought provoking look at recycling and design for eventual recycling.

ccmonnett 1 day ago 2 replies      
It might not be read much only because it was recently released but Homo Deus by Yuval Harari is off the chain.

This dude can explain grand ideas encompassing human civilization in (relatively) simple, brief, and entertaining language and I can't get enough of it. I think Homo Deus's forward focus will appeal to the HN crowd more than his more famous Sapiens.

le-mark 1 day ago 0 replies      
Non fiction and IT related:

Algorithmics The spirit of computing: this is a really great exploration of 'algorithmic' thinking, accessible to anyone:


Soul of a new machine: the book won the pulitzer, it's about now defunct Data General and implementing a new machine in the early 80's:



Marooned in Realtime: Vernor Vinge on a group of people who missed the singularity, and try to understand what happened. A damn good detective story too:


Powerofmene 3 hours ago 0 replies      
If you like history, I would highly recommend:

Battle Cry of Freedom by James McPherson.

Probably one of the best books about the Civil War that has been written.

FiatLuxDave 23 hours ago 0 replies      
I love the idea of looking for overlooked gems. Here are a few of mine:

Infinite in All Directions, Freeman Dyson : just a book of his thoughts, but I really appreciated his perspective on respect between religion/spirituality and science.

Ignition! An informal history of liquid rocket propellants, J.D. Clark : I picked up a copy of this in a roadside bookstore on a lark. Entertaining tales of people blowing themselves up in the name of science.

Apollo 11 Press kit : My grandmother was a journalist for Florida Today during the space race, and she gave me her copy. It is amazing to see how much detail was provided. I don't know if our modern press ever gets press kits like these, but it was not dumbed-down much at all, which was very nice to see.

The Adventures of Samurai Cat, Mark Rogers : Silly fun. Kind of like if Bored of the Rings had been written by Jerry Bruckheimer and Spider Jerusalem.

Into the cool, Sagan and Schnieder : about complexity and thermodynamics. Written for a layperson, I still learned a lot from it.

Order out of Chaos, Prigogine and Stengers : More thermo, also written for lay audience, also learned a lot from it.

Controlled Thermonuclear Reactions, L. Artsimovich : Of all the plasma physics books I have read (many) this is the one I remember most. Rather out-of-date now, it contains loads of information about the early Soviet fusion program, with pictures and discussion of now-forgotten experiments.

briga 1 day ago 0 replies      
In Search of Lost Time. It's definitely famous and well-known, but I think it's far more talked about than actually read. Proust is a philosopher and psychologist more than a novelist, and large chunks of the book are basically just philosophical essays, but its still probably the greatest novel I've read. I think it's one of the greatest achievement of the human mind to date and it has more to say about the human experience than anything since, as far as I can tell.
clock_tower 23 hours ago 0 replies      
Rory Stewart, _The Prince of the Marshes_. It's about general dysfunction in the early Iraq War, but it's also about the meaning of life. Perhaps it's just how Stewart writes? (His _The Places In Between_ is also well worth reading, but is much better known.)

Tony Horwitz, all works -- especially _Baghdad Without a Map_ (which will leave you with a much healthier view of the modern Middle East) and _Confederates in the Attic_ (a dress-rehearsal for the Age of Trump?).

Pearl Buck, _Sons_. (Best to read _The Good Earth_ first, but you've probably already read it.) I doubt it's a very accurate depiction of China, and the characters' morality is hair-raising (while the narrator is so far off the deep end that he/she is impossible to take seriously); but it's a memorable adventure story firmly grounded in the plausible, and it dramatizes some important lessons about the dangers that can afflict families and middle age.

fadolf 1 day ago 1 reply      
Musashi by Eiji Yoshikawa

The Story is breathtaking and the teachings are divine.It currently has the potential to change my life, i even marked some sentences and put tapes to important pages that concern my life.

dirtyaura 1 day ago 1 reply      
Robert Kalpan: The Ends of the Earth: A Journey to the Frontiers of Anarchy

It's a part travel book, a part geopolitical analysis. In the hindsight, Kaplan was probably wrong on many things, and his views were US and West centric, but personally it was inspiring read, a travel book that was much more than a travel book.

nayuki 1 day ago 1 reply      
Understanding good idioms in Java, instead of learning from scattered pieces of folk knowledge:

* http://www.oracle.com/technetwork/java/effectivejava-136174....

* https://www.youtube.com/watch?v=V1vQf4qyMXg (a talk by the author)

Corner cases in the Java programming language:

* http://www.javapuzzlers.com/

* https://www.youtube.com/watch?v=wbp-3BJWsU8 (a talk by the author)

gdulli 1 day ago 1 reply      
Old Masters and Young Geniuses: The Two Life Cycles of Artistic Creativity (by David Galenson)

Influential to someone whose practices and path to success in engineering doesn't follow the normal pattern but is still valid. (At least it was influential to me.)

thorin 1 day ago 1 reply      
I always really enjoyed Travels by Michael Crichton. Considering how popular he is I've never spoken to anyone else who's read it. It gave me a lot to think about in my early 20s.

I also enjoyed Jonathon Livingston Seagull, which seems to have fallen out of favour recently.

kevstev 1 day ago 0 replies      
Racing the Beam: https://mitpress.mit.edu/books/racing-beam

Its about how hard it was to program the Atari 2600 and the clever tricks required to get the most out of the machine. One of my favorite anecdotes was that in I believe Yars revenge, one of the sound effects was produce by reusing a section of code as sound data because it sounded good enough.

cm2012 1 day ago 0 replies      
Being Direct by Lester Wunderman. Best book on direct marketing in the world IMO. I currently do high level marketing consulting, would not have happened without thia book. Way better than Ogilvy on Advertising.
jriot 1 day ago 1 reply      
The Three-Body Problem by Liu Cixin. Chinese Science Fiction, really different perspective of hard questions particularly from a Western perspective.
emhac 1 day ago 0 replies      

History of thinking is the book which Sapiens / Homo Deus would like to be.I think it is one of the best complete arguments on the nature of our relationship to computers.

jotjotzzz 1 day ago 0 replies      
I'm sure a lot of people have read it, but it's the best book for me. The Tao Te Ching (I have the Stephen Mitchell translation).
Top19 1 day ago 0 replies      
"Mathematics: From the Birth of Numbers".

If you've ever read "Code" by Charles Petzold, it's as illuminating as that was.

Also a little bit tragic, makes you realize there is a lot of fun and beauty and even social history in math. I didn't realize there is also a lot of complaints in how math is taught, and that the arithmetic we all learn is considered the most boring part.

jboggan 1 day ago 0 replies      
"Modern Times" and "The Birth of the Modern" by Paul Johnson which cover world history from 1919-1989 and 1815-1830 respectively. Amazing histories written in a breadth and exploratory depth that illuminate so much of the past and make the present more understandable.
thecupisblue 1 day ago 0 replies      
Hagakure and Mishima, at least that's the direct translation of the ex-yu title.The book is amazing, dragging you into a world of proper spiritual and personal behavior worthy of a samurai. Read it as a kid and it had a great influence on shaping me as a person.
Bakary 15 hours ago 0 replies      
Roma terna - Robert Silverberg

The Happiness Hypothesis - Jonathan Haidt

Alamut - Vladimir Bartol

Non Stop - Brian Aldiss

A fortune teller told me - Tiziano Terzani

nategri 1 day ago 0 replies      
Kim Stanley Robinson's Mars trilogy. Jam packed with ideas crucial to the next 100-150 years. I reference these the way more insufferable people reference Ayn Rand.
noir_lord 1 day ago 0 replies      
Noir by KW Jeter


My username isn't a co-incidence.

Gustomaximus 1 day ago 0 replies      
'In search of stupidity'. Talks about tech companies that boom then flop. Overarching lesson seemed to be don't get arrogant and stop listening to your customers.
fadolf 11 hours ago 0 replies      
I am so thankful for this Thread tbh :3
AnimalMuppet 1 day ago 0 replies      
He Is There And He Is Not Silent, by Francis Schaeffer. A very deep philosophical argument for the existence of God. (By "deep", I don't mean a bunch of mumbo-jumbo. I mean connecting first principles to concrete conclusions in a very direct way.)
schrectacular 1 day ago 0 replies      
Quantum Psychology by Robert Anton Wilson

Zima Blue by Alastair Reynolds

ciocan42 1 day ago 0 replies      
Nexus trilogy by Ramez Naam -Sapiens / Homo Deus
timclark 1 day ago 0 replies      
Adrift on the Sea of Rains by Ian Sales

A Dream of Wessex by Christopher Priest

SirLJ 1 day ago 0 replies      
More Money Than God - very inspirational and a glimpse into some of the best minds on the planet...


perseusprime11 1 day ago 0 replies      
Pale Blue Dot by Sagan
How do you test a new server provider?
6 points by hemen  1 day ago   4 comments top 2
jjoe 1 day ago 0 replies      
Answers will vary. But there exist one true test of the provider's ability to stick with you through thick and thin: it's the Turing test!

See, providers have regressed (economy of scale and all) to the degree where their responses to inquiries/emails/requests are indiscernible from early wannabe AI chatbot implementations.

Take the time to email/call your potential provider and ask questions regarding the service. Do the responses pass the smell test? Is sales completely clueless and unable to answer questions about simple technical matters (red flag)? Can support carry out requests that aren't scripted?

Trust your instinct and common sense.

LinuxBender 1 day ago 1 reply      
I put up an extremely offensive (yet legal) image or video, then link to it from a conservative forum. I then log the date/time and calculate how long, if at all, my server remains online. If it can handle the DoS or DDoS, phase one is good. If the provider doesn't cave to demands to remove the site, then phase two is good. At that point, I would call them a good server provider.

If you are referring to benchmarking, I might do a few quick tests with bonnie++ and openssl speed tests for the server itself and some iperf3 tests for the network throughput.

Ask HN: Why does mobile appear to have a better dev UX compared to desktop UIs?
7 points by notheguyouthink  1 day ago   8 comments top 4
catdog 1 day ago 0 replies      
Ever tried Qt? It's cross platform but still tries it's best to feel as native as possible. It brings its own C++ IDE (Qt Creator), is well documented and nowadays you can use QML [1] to build your UI [2].

[1] https://en.wikipedia.org/wiki/QML

[2] https://www.youtube.com/watch?v=_6_F6Kpjd-Q

leipert 1 day ago 1 reply      
Yes, there are native UIs on desktop. I tailored my answer for react-native, as you mentioned that.

1. macOS -> Aqua [1], apparently there exists an community package for react-native [2]

2. react-native-windows [3] by Microsoft which apparently has support for Windows 10 and xbox

3. There are other UI kits for linux and cross-platform, e.g. qt and gtk. I did not find much about react native there, except for ubuntu [4]

PS: I got those hits by googling "react native for desktop" :P

[1] https://en.wikipedia.org/wiki/Aqua_(user_interface)

[2] https://github.com/ptmt/react-native-macos

[3] https://github.com/Microsoft/react-native-windows

[4] https://github.com/CanonicalLtd/react-native/blob/ubuntu/REA...

bsvalley 1 day ago 1 reply      
Touch screens introduced a lot of new gestures. It's not about mouse clicks anymore but people's fingers. You have to think about your user interaction in a whole different way. Slower animations, smoother movements, more feedback and responsiveness.
flukus 1 day ago 1 reply      
The biggest problem is that MS seriously dropped the ball. There was never a developer friendly API like Qt or Gtk for windows, MS wen't down the drag'n'drop tooling route instead. The other problem was that everything was grey boxes by default and almost no apps stick to the native look and feel, let alone allow themeing. This is even true of most MS apps like office and internet explorer.

Contrast this to linux desktops where you can knock out applications fairly easily and it uses the local theme by default. They made it easy to do the right thing so most apps do the right thing. For an example, here is a todo list I threw together: https://gitlab.com/flukus/gtk-todo/blob/master/main.c . I just define my app, I don't do any theming, I don't worry about font sizes or color scheme, I just use the defaults that the toolkit provides and when I open the app it looks like every other gnome app. This is what windows was and probably still is missing. And the problem seems to be getting worse, see the awful background image in the windows 10 email client.

Aside from that, mobile UI's are simply much easier than desktop UI's. There is a lot less variablity in screen real estate for one, everything is full screen all the time. The don't have nested menus, they don't have accelerator keys, they don't have to (can't) display complex data, they are simple out of necessity.

       cached 12 July 2017 20:05:01 GMT