iPhone at ten: the revolution continues - <AUTHOR> http://www.apple.com/newsroom/2017/01/iphone-at-ten-the-revolution-continues.html <comment><USER2> It's not a hugely popular opinion, but I'm still happier with the iPhone than any other phone currently on the market.

Not only do I find it nicer to use (which is somewhat subjective), but I still feel that Apple are standing up for user rights (e.g. FBI/government requests to make phones less secure) more than any other mobile manufacturer.

<comment><USER3> Standing up for your right to not use your device as you please? Standing up for your right to lock-in your data with a single vendor?

<comment><USER4> I know a guy who thinks it's great that, when a process pegs his phone's CPU, he can drop into a root shell and kill -9 it from top.

I think it's great that in five years of iPhone ownership that's not a problem I've ever had, or even had to think about. And the only Apple service I use is the app store.

Horses for courses. If you want total control and software freedom, you won't prefer an iPhone. If you want the closest available approximation to appliance-level reliability, you won't prefer anything else.

<comment><USER2> The other issue for me actually is that while I might like to drop into a shell sometimes I don't really feel Android phones offer me much in that regard either.

Android is far for a standard Linux/UNIX system. And it's hard to build one on top of Android because of their use of BIONIC rather than glibc.

So, I feel that Android has taken Linux and crippled it to suit their ends. To me jailbroken iPhones felt much more like standard UNIX phones than Android phones.

My ideal phone doesn't exist. But he iPhone is still the nearest match right now.

<comment><USER5> I use macOS every day, and I love it. And it is me who owns the hardware, and who is root on the device (I can't say I own the software). If I want to kill a process on macOS, I am free to do this. I don't have this freedom on iOS. On my Android phone I have the freedom to root the device (which is sort of supported by Fairphone), and if ever the OS isn't supported anymore I can just run CM or LineageOS or stock Android on it myself. You don't have that liberty on iOS devices. Jailbreaking on iOS isn't very feasible because you end up having to run code to exploit iOS. Which means your phone has a known vulnerability which you want to get fixed. But you can't without the source.

<comment><USER4> > I don't have this freedom on iOS.

Right. But, to my earlier point, you never really need to, either, because the OS does a good enough job of managing resources that such intervention is not required. I'm sure there exist corner cases, but having never hit one in half a decade of extensive use, I am prepared to argue they are vanishingly rare.

That's the tradeoff: a lower granularity of control over the system, in exchange for a system well enough designed that such granularity is not required for stable and performant operation. There's an argument to be made that the tradeoff shouldn't exist, but that's theoretical unless Craig Federighi is actually on the panel. Here in the world of things that are, it's worth keeping in mind that the compromise is exactly that: yes, we give something up, but we get something in exchange for it, too.

<comment><USER5> > Right. But, to my earlier point, you never really need to, either, because > the OS does a good enough job of managing resources that such intervention > is not required.

What do you mean? I'm not aware of any SSH which fulfils my needs on iOS. Or Android for that matter. On Jolla (and MeeGo/Maemo) you had a CLI at your command. The conundrum is you don't know what you're missing unless you had it before to begin with. Case in point: there's an entire generation of children raising up with touchscreens. That exposure has a price.

What do you consider the best browser on macOS? I don't consider Safari the best one. YMMV. At least you and I got the freedom to run another browser on macOS (those versions of Firefox and Chrome on iOS are not the real deal). I got the freedom to run Tmux, Vim. I got the freedom to compile my own version of OpenSSH which includes a patch for additional functionality. I get to decide which browser extensions I get to run (without having to rely on Apple to decide which extensions are allowed for Safari). I get to configure ssh and sshd. I'd like to take the risk myself of taking it for granted when/if it breaks.

I am actually OK with all of this as long as I don't have to rely overly on my phone. However, smartphones have become so important now, and I end up having and needing a MBP to make up for it. There's going to be a time where the computers (smartphones, tablets, etc) running iOS are so powerful that you can easily run a lot more on them. And, with that progress, they become less of an embedded device and therefore the freedom to decide what you run is increased.

Finally, there's Apple who decides who's in and who's out. Americans are totally cool with violence of all sorts and kinds, but as soon as the first thing a baby sucks on is shown its suddenly drama. I find that bollocks, and I don't want to be scrutinised to such a culture _deciding_ on what I am and am not allowed to run on _my_ device. The device I (not an American) _worked hard for to afford_ , the device I _bought_ , and the device _I own (not rent)_. No, Google isn't perfect either; Google earns money via advertising, Google just blocked an anti adware extension in Chrome called Ad Nauseam, and they also don't allow certain software in GCM.

<comment><USER6> > I'm not aware of any SSH which fulfils my needs on iOS.

What's wrong with Mosh?

[https://mosh.org/](https://mosh.org/)

<comment><USER4> Blink is good if you need Mosh support; Prompt 2 is arguably better if you don't. But I get the impression GP has more on his mind than the choice of terminal emulator/SSH client app, although I remain rather puzzled exactly what point he's trying to make.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> Not an iPhone user, but Apple entering the smartphone market was a great thing for consumers I believe. Even if the first iPhone was just a very polished iteration of all the other smartphones on the market, it brought Apple's relentless focus on polish as well as business savvy to the market, it also catalyzed Google and a bunch of other companies to jump into the fray once Apple cleared the way with telecom providers.

Before the iPhone, carriers billed on individual metrics like bytes transferred or connections to servers, the first few months of iPhone bills were sometimes hundreds of pages long. The real revolution that Apple brought was in forcing carriers to become one step closer to being dumb pipes. It's an agreement that even today no other maker of Smartphone has really quite gotten to with the same companies. Google phones still ship with crapware on them.

At the same time, Apple showed structural weaknesses in competitors and exploited them, Microsoft, Nokia, Blackberry, Palm, etc. all couldn't build offerings as good as the iPhone and if it weren't for Google we'd very much be using a monoculture of devices these days.

At the same time Android devices took a "try it first, try it every which way" approach that has also forced the iPhone to come along kicking and screaming, then putting Apple in a position to integrate some new innovative feature that Android devices don't have, putting them both into a state of perpetual innovation.

Consumers win in this and I find it remarkable how many things the little device in my pocket has simply and entirely replaced.

<comment><USER8> After 10 years, I still find it hard to say what exactly Apple did back then. It was not about the app store for example, because that came one year later.

* They saw the premium niche. Ballmer ridiculed them for the price of the iPhone, but now we know, people are fine with paying 800$ for a smartphone. It is still a niche if you compare the sheer number of Android phones, but a very profitable one.

* They removed the pen from the PDAs and had an innovative touch interface. More intuitive user interfaces is something Apple was known for before and they went further with it.

* They got the carriers to cooperate and give up some control. While the story is not as strong, we could compare that to IBMs decision to _licence_ an operating system for the PC.

* At that point in time, it was (finally?) very useful to have Internet access on the go.

<comment><USER9> Ballmer mocked iPhone as a luxury item at unrealistically high prices because he looked at it as just another smartphone.

If you look at iPhone as a low-price disruptor to computers (and I think that's fair when you consider how many people use iPhone as their primary or only computing device), its pricing makes perfect sense.

</comment></comment></comment><comment><USER10> Unfortunately its success has warped Apple. Cook has ignored the Mac and promoted iOS as the 'everyday computing' platform. His bet hasn't paid off though. iPad sales have been declining since 2014. Even iPhone sales have peaked because of Apple's anti-customer policies (how do you plug your lightning headphones into your Mac?). Reliance on one product is very dangerous.

<comment><USER11> Steve Jobs reshaped Apple into an organization that would focus on a select few products at a time. This worked very well in the beginning and allowed them to rapidly innovate.

Now they're a victim of their own success. All their product lines are relatively successful. There's not a significant product that they can kill (they killed the routers now, but that probably doesn't free up too much focus anyway). I think even Steve would've struggled with this conundrum.

Internally, they've tried to merged Mac and iOS, ala Windows 8/10, to allow them to keep a single focus.. but their conclusion was that it compromises both Mac OS and iOS in a way that they don't want to do. And if they made the merged OS closer to iOS, it would alienate a lot of Mac users and developers.

So how should Apple refocus? Who knows. I think it's a flaw to think that Steve Jobs would have magically solved the problem already. He was smart, but not a god.

> how do you plug your lightning headphones into your Mac?

You don't buy lightning headphones.

Apple will kill the lightning on iPhone too. Either replacing it with USB-C or removing it altogether. This is all part of a transition which is unavoidably awkward.

Apple is betting heavily on wireless, and lightning headphones is just a stop- gap solution while wireless headphones improve. A way for people to be able to buy some cheap, simple headphones to replace the bundled ones if they need to. If you buy an expensive lightning-only headphone you're a fool.

The moment that wireless charging is fast enough to completely replace wired charging, they will kill the lightning port and perhaps bundle a case which bridges lightning or USB-C to wireless charging+bluetooth 5. Third parties will deliver cases with bundled battery, USB-C and 3.5mm jack, and since the phone will be even thinner without any ports, the phone+case will still be plenty thin enough for daily use, and sturdier too. Everyone will be happy (hah, as if..)

<comment><USER12> > Apple is betting heavily on wireless, and lightning headphones is just a > stop-gap solution while wireless headphones improve. A way for people to be > able to buy some cheap, simple headphones to replace the bundled ones if > they need to. If you buy an expensive lightning-only headphone you're a > fool.

They could have made the transition much better if they just included Airpods with iphone 7 onward..

<comment><USER13> The airpods weren't ready in time for the iphone 7 launch.

They could have delayed the iphone 7 launch by a few months but (especially given what happened in their other product lines) that would probably have been a mistake.

</comment></comment></comment></comment><comment> yoz-y One thing I really like here (and not meaning it as a joke) is that when you look at the original iPhone and the iPhone 7 side by side they look very similar. Apple has stuck to their guns and kept on iterating, rather than chasing a new cool design for every release.

<comment><USER14> I think the double-glass sided 'jewel case' design introduced with the iPhone 4 is still the best aesthetic design for any consumer product ever. I know it's just not practical for the bigger phones though, hence they went back to a more conventional design. However yes, from the front not much has changed. The sheer iron-willed discipline it took to reduce the front face design down to one physical button from the start is still impressive.

<comment><USER15> > The sheer iron-willed discipline it took to reduce the front face design > down to one physical button from the start is still impressive.

Impressive, sure, but not ideal. As a result of this commitment, you can, variously, click, double click, double tap (not actually click, just touch like on a capacitive screen), long press the button. Furthermore, many of these actions have context-sensitive responses, like opening the camera from the lock screen or bringing up music controls if that's playing. And other common functions, like "back" are relegated to various icons and locations on the touchscreen depending on the app.

On other phones, the common "back", "home", and "switch app" functions are on separate buttons rather than being different interactions with a single button.

The Apple single-button phone, like the single-button mouse, is less discoverable and less easy to use, while being better looking and easier for some common use cases. Unlike the single-button mouse, though, I think it's likely to stick around for a long time.

<comment><USER16> Yes but software on other phones is inconsistent about the meaning of the extra buttons.

The Back button for instance can be infuriatingly unpredictable to the point where you just revert to the touch screen. It just isn't productive to have to wonder how many screens back you will go, or if you will end up in another application, or if the button will be ignored completely.

<comment><USER17> What apps do you see this with? There are arguments against the android button model but your point seems like an odd one. In all of the apps I use the back button (the only button they get control over) acts very predictably.

<comment> yoz-y Has the behavior changed recently? Back when I used android the back button moved to the "previous screen", but sometimes it skipped some pages (for example in a three step checkout it would go all the way to the beginning). But the worst was that it could actually go all the way back to the home screen or even switch to a different application.

<comment><USER17> I can't recall an app ever skipping pages on me. As for back to the home screen I think that is intended behavior, if you open and app and hit back you should end up back at the home screen. And switching apps is intended too, if you came from another app it should take you back there. It works much like the back button on your web browser, it doesn't navigate a particular site per-say, it just takes you back in the history of "activities" from which you came.

</comment></comment></comment></comment></comment></comment></comment><comment><USER18> As an app creator, I have bought almost every new iPhone model since the original. Having used the iPhone 7+ now for a few months I can honestly say that every time I want to use my existing headphones, I get super frustrated at the dongles I need to connect/disconnect. And no, I don't want to buy a pair of headphones I need to charge all the time or that I will lose when they fall out of my ears.

I think this is my last iPhone purchase for personal use.

<comment><USER19> There's always SE. Sturdy, proven design, headphone jack and sane (one- handable, pocketable) size. As much as I'd want to like Android, there's nothing of this size left there. I hope Apple will continue this line into the future.

<comment><USER20> There is the Sony Xperia X Compact from September 2016. It's slightly larger and much thicker (9.5 mm) and it weights more. Still the closest one. It came with Android 6 and got an OTA update to 7 in mid December.

It's fast and the battery always lasts 2.x days to me, I charge it again at around 20%. It lasted 3 days 18 hours last time over a long weekend, down to 9%. I checked and I made 8 hours of screen activity so it wasn't in my pocket all the time.

Given how long it lasts I wish they traded some battery to make the phone thinner and lighter, exactly as the SE.

[http://www.gsmarena.com/sony_xperia_x_compact-8292.php](http://www.gsmarena.com/sony_xperia_x_compact-8292.php)

</comment></comment></comment><comment><USER21> Every release they always say "this is the biggest release ever!" The superlatives, hyperbole, and hagiography are wearing kind of thin at this point.

I'm not saying anything bad about the iPhone, but I can really do without the constant "magical! amazing! beautiful! best ever!" stuff. At this point, can't they just rest on having a great product without the need to amp up the marketing so over the top?

<comment><USER22> What's a realistic alternative? "Here is our new somewhat improved iPhone... Buy it if you want to." Marketing is marketing.

<comment><USER21> Have you looked at how Google, Amazon, or Microsoft market things? The volume level is not where over the top.

There have been versions of IOS I'd call significant large releases. The issue with Apple is they act like every release is a revolutionary upgrade.

IMHO, build great products, be proud of them, and people will come. The superlative stuff just sounds inauthentic these days.

<comment><USER23> Quite. I gotta say i love the people at Google is willing to fail on stage, and pull comedy antics (like donning stripper pants in preparation for demoing a exercise bike dock).

</comment></comment></comment></comment><comment><USER24> There's 23 years between the Macintosh in 1984 and the iPhone in 2007. Real paradigm shifts in computing are rare. People who think the iPhone is going to be supplanted by whatever en vogue technology is being hyped in the media today should keep that in mind. Especially considering that Apple still sells PCs 40 years into its life (how many computer companies have gone the way of the dinosaur in that time?) and has a virtual lock on the high end of that market.

<comment><USER25> That's a good point, but if you believe that the rate of technological advancement is still increasing as it has been throughout modern history, you would expect each successive paradigm shift to come more quickly than the last (aside from some noise, obviously). Of course, the shift may not come in a field we currently think of as being involved with personal computing. (Much like we wouldn't have thought of cellphones as such in the 90s.)

<comment><USER4> > if you believe that the rate of technological advancement is still > increasing

It made sense for Robert Heinlein to believe this in the 1950s, when he wrote an article prefiguring the "technological singularity" concept by a good forty years.

It may make less sense for someone to continue to believe the same thing in 2017.

<comment><USER25> It may, although I'm not ready to discount the possibility yet. Another thing that has been seen throughout history is people claiming progress is at an end. I can't remember the source, but there's a famous quote from the early 1900s that everything important in physics had already been discovered. People also theorized progress would slow after peak coal was reached. There are many more examples. I would suggest that whatever time one is living in, it feels like all the major advancement is behind us, and things will slow from here. It may indeed be true now, or it could just be that we're feeling the tail end of a couple S-curves (Moore's law especially) and can't fully appreciate what the next paradigm will be.

<comment><USER4> > Another thing that has been seen throughout history is people claiming > progress is at an end.

That's always seemed like an early symptom of dotage to me.

</comment></comment></comment></comment></comment><comment><USER26> A graph of cumulative iPhone sales shows that about half the total were sold in the last two years (1). In November 2013, Horace Dedieu of Asymco fit the sales trend to a logistics curve (2), but in August 2016 showed even faster adoption (3) Tim Cook's enthusiasm seems warranted.

(1)[https://infographic.statista.com/normal/chartoftheday_5390_c...](https://infographic.statista.com/normal/chartoftheday_5390_cumulative_iphone_sales_n.jpg)

(2)[http://www.asymco.com/2013/11/25/one-billion-ios- devices/](http://www.asymco.com/2013/11/25/one-billion-ios-devices/)

(3)[http://www.asymco.com/wp-content/uploads/2016/08/Screen- Shot...](http://www.asymco.com/wp-content/uploads/2016/08/Screen- Shot-2016-08-17-at-9.23.26-PM-620x442.png)

</comment><comment><USER27> Back in the day, and before becoming the local product manager for the iPhone 3G at one of my previous employers, I kept a timeline[0] covering articles, reviews, and other interesting bits. It hasn't aged very well, but some of the links are still active:

[0]: [http://taoofmac.com/space/com/Apple/iPhone](http://taoofmac.com/space/com/Apple/iPhone)

</comment><comment><USER28> "The revolution continues" (or "Uber movement", the other frontpage entry on HN) - why does this all sound like communist propaganda?!

<comment><USER29> If anything it's capitalist propaganda but this site is small enough and full of enough educated people that we can read things like this subjectively and then bitch about it in the comments.

<comment><USER28> Sure, but it's interesting that now that the communist (in the mainstream meaning) counterpart does not exist anymore (except small enclaves like Cuba or North Korea) - that big capitalist corporates - or their propaganda, pardon, public relations department - take over the very same language.

Also a bit of Orwell's Newspeak in here as well. In the end it's funny of course :)

</comment></comment></comment><comment><USER30> The ongoing, incremental, improvements continue.

The iPhone 7 and 7 Plus: \- Better camera \- Better processor \- Better speakers \- Better screen \- Almost waterproof this time

I see nothing groundbreaking or life changing here. Something that might actually BE life-changing is a molecular sensor and better health monitoring / diagnostics tools.

<comment><USER11> You can start to see that Apple is positioning themselves for a more innovative redesign.

If you look at their recent iteration (removing the headphone-jack) and rumors from internal development (fast wireless charging, edge-to-edge display tech).. it's moving towards a phone that's more like a thin slate of glass where everything is wireless. Think the tablets from Westworld.

Either Apple will bundle a case with extra battery and USB-C (bridged to wireless charging+bluetooth 5), or third parties will do so. Given that this approach will allow Apple to push the thinness even further, using a case when you're out and about will probably be more or less essential.. but it won't be so bad since the combined thickness will be on-par with iPhone 3-4.. and you get the flexibility to choose between different designs, battery sizes, ports, etc.

It's not super groundbreaking ala iPhone 1, and it's where everyone will end up eventually anyway, but Apple is positioning themselves to go there before anyone else. Hence the awkward timing surrounding 3.5mm jacks, lightning and USB-C.

<comment><USER31> I doubt this, because Apple has lost its focus.

Products used to offer exciting user benefits, with a significant new user benefit in each update. But going completely wireless is an engineering fantasy, not a user benefit.

Let's say iPhone 10 arrives as a shiny slab of ceramic. So what? Even if it looks glisteningly pristine and cool, users care more about functionality and ease of use.

The first few iterations were all about the latter.

The last few iterations have been about engineering and design for the sake of it. Delighting users seems to have slipped down the list.

</comment></comment></comment><comment><USER32> If you completely buy in to apples ecosystem it is really quite nice. I just got the Apple Watch and use it to unlock my MacBook. I know there are phone apps for this and it's not unique to apple but the Apple Watch implementation works perfectly. It waits until you wake up the screen and gives you feedback on the watch in case you're in range but not at the computer. After purchasing the iPhone in 2007 I switched to Mac. I now use Mac windows and Linux but all on Mac hardware. I guess the iPhone was the gateway drug for me.

<comment><USER33> TBH you don't need to completely buy in to Apple ecosystem. I use iPhone just fine with Fastmail, Dropbox, Spotify and Google Photos.

<comment><USER32> That's true- my perspective is that it's great hardware to run whatever software/OS you need.

</comment></comment></comment><comment><USER29> I've owned almost every model of the iPhone, and they stopped innovating a long time ago.

Until they catch up with things like wireless charging - or introduce something 'revolutionary' like a shatter-proof screen or a graphene rapid charge battery - I won't be buying another iPhone. They've stagnated over the past few years while Android overtakes them.

</comment><comment><USER34> A 10th anniversary model would have been a nice surprise...

<comment><USER35> My money is still on an "iPhone X" later this year.

<comment><USER36> Apple has never been the kind of company to celebrate anniversaries in that way. I would be mildly disappointed if they started now.

<comment><USER37> They did make a 20th anniversary Mac, but like you alluded to it wasn't a mass market product.

</comment></comment></comment></comment><comment><USER38> That image makes me want an iphone with the original form factor. They could use the entire face for screen and put the button on the side.

<comment><USER39> This. The X version of the iPhone SE. Pun intended.

</comment></comment><comment><USER40> No doubt they are doing a great job and have achieved some remarkable milestones, but still calling it a "revolution" a decade down the track is stretching things a little IMO...

EDIT: To allay the seeming confusion - I am saying it WAS definitely a revolution when it first came out. It is just that I don't think you can still chant and wave the "Viva La Revolution!" banners 3650 days later when it has just been a series of iterative changes during that time.

<comment><USER41> You don't remember the crappy screens, overall build quality, user interfaces, apps (mobile java lol), performance of phones in the pre-iPhone era? All those problems went away when the iPhone set the bar in these fields.

<comment><USER42> Some of us were using Symbian phones, and even got to play with Nokia's 7710, released in 2004, 3 years before the iPhone.

So no, not really a revolution.

<comment><USER43> I loved my Symbian phones, but the iPhone was indeed a revolution. There's a reason Nokia and Blackberry are suffering losses.

<comment><USER42> The only ones I can relate to Nokia was internal wars between Symbian and Maemo units, and the fact that Symbian C++ tooling and C++ dialect were a pain to use.

Nothing to do with the device itself.

<comment><USER43> Virtually every new phone released today looks like the iPhone. That's your revolution right there. There are many technological advantages the iPhone brought. First and foremost the capacitative touchscreen. Nokia didn't go with the times and that was there end. Wether it was caused by internal wars or a stubborn leadership is irrelevant.

</comment></comment></comment></comment></comment></comment><comment><USER44> >> _" The world's most popular camera"_

Citation needed.

<comment><USER44> Love how one can get downvoted for asking for references. Fans.

<comment><USER45> You'll rarely get downvoted if you actually ask for references. But if you leave a bald [citation needed] you're going to get some downvotes.

<comment><USER44> So how do you "actually" ask for reference? What I've written is the most direct one can be (without caring about sugar coating my sentence). People wouldn't have minded had I written: "I'm a long time fan of Apple and still love their products above any other company's, but I think some of their statements would get much more value if they support them with a third party reference like other companies do with asterisks and all, like a statement like their camera is most popular in the world could have been supported with some reference. "

I bet, that would look like a neutral and balanced statement to all and most people would be happy with it, but as you can see, it's easy to fake it. The truth is I'm tired of Apple's hyperbole and people _should_ question them. If you make a claim, support it with facts, otherwise don't write it.

<comment><USER45> "Do you have any references for that please?"

[citation needed] is just snark.

<comment><USER44> >> _is just snark._

That's how you look at it. People can look at your (barely) rephrased question as a snarky comment too.</comment></comment></comment></comment></comment></comment>


Raspberry Pi Temperature Sensing - <AUTHOR> http://spottedsun.com/raspberry-pi-temperature-sensing-pt-1/

<comment><USER2> The title of this submission: "Raspberry Pi Temperate Sensing".

The title of the linked article: "Raspberry Pi Temperature Sensing".

Not to be intemperate, but copying and pasting a title is easier than getting it wrong.</comment>


Software bug caused $251m Mars lander crash - <AUTHOR> https://www.theguardian.com/science/2016/nov/24/mars-lander-smashed-into-ground-at-540kmh-after-misjudging-its-altitude <comment><USER2> At least it wasn't because they got confused about what units they were using.

[https://www.wired.com/2010/11/1110mars-climate-observer- repo...](https://www.wired.com/2010/11/1110mars-climate-observer-report/)</comment>


Lessons from the Last Swiss Finishing School - <AUTHOR> https://www.newyorker.com/magazine/2018/10/08/lessons-from-the-last-swiss-finishing-school <comment><USER2> I loved the fact that they pointed out: The women weren't there to earn wealth but to learn how to look like they had inherited it. It's no surprise that there were so many Chinese there. Social status is an very conscious part of their society's psyche.

<comment><USER3> I thought that remark on the author's part was a bit flippant and uncharitable. The Romanian flight attendant, for example, was there to learn how to better empathize with her clientele, not to learn how to fool them.

Actually a pretty interesting article. Everyone who has ever met with an investor, for instance, has an interest in the underlying social dynamics. That appreciation seems to be what this sort of school tries to impart, rather than merely training people to disguise themselves as heiresses or whatever.

</comment></comment><comment><USER4> Is the spelling of "preëmptive" with a trema correct? I know of course what a trema does, but I have never seen it being used in this word.

Sorry for being off-topic. Actually not so off-topic, considering how often the word is used in CS :)

<comment><USER5> It's a nice touch in some ways. Coöperate makes it obvious I am not referring to something to do with chicken coops. If I were not a native speaker of English I suspect words like that (and reëlect, etc) would be a challenge.

<comment><USER6> As a Swede "Coöperate" looks very weird, as ö is a letter very commonly used in swedish.

<comment><USER5> English used to have more of these handy characters (like þ) but sadly the language is being denuded and stripped. Even the subjunctive form is almost dead - most of the time it's "I wish I were there", not "I wish I was there", dammit!

</comment></comment></comment></comment><comment><USER7> I have little doubt they _try_ to teach the nouveau riche some manners but the question remains: can they learn?

<comment><USER8> What makes you ask that question?

<comment> ur-whale That was a joke, I suspect.</comment></comment></comment>


The non-developer's guide to hiring software developers - <AUTHOR> http://thenextweb.com/entrepreneur/2012/11/04/the-non-developers-guide-to-hiring-software-developers/?fromcat=all <comment><USER2> My main piece of advice to non-developers hiring developers: don't. Let other developers hire them for you.</comment>


Surviving under water in an air bubble - <AUTHOR> http://physics.stackexchange.com/questions/67970/surviving-under-water-in-air-bubble <comment><AUTHOR> D'oh! Just realized I was a chemical engineer an hour after I posted this :)

The steps to solve this problem are pretty simple:

1) Find the diffusion coefficient of oxygen in seawater. This can be found from data on ocean waters near the region the guy was trapped (Nigeria), modified to account for the cooler water under the surface. This link ([http://www.unisense.com/files/PDF/Diverse/Seawater%20&%20Gas...](http://www.unisense.com/files/PDF/Diverse/Seawater%20&%20Gases%20table.pdf)) has these coefficients for various combinations of salinity and temperature. All of that data is for 1 bar so you'd have to modify those values for the pressure at ~30 m.

2) Set up an oxygen mass balance about a bubble of radius R. We'll assume the bubble is entirely spherical. If you consider the fact that the bubble is centered at a room corner, its radius will need to be sqrt(8) times bigger than the calculated value (since diffusion can only occur at the surface of the bubble that has contact with sea water).

3) The rate of change of O2 concentration (d_C_O2/dt) will be zero (in order for one to persist indefinitely in the bubble), and we know its value must be 15-19 vol % according to this site ([http://www.newton.dep.anl.gov/askasci/zoo00/zoo00755.htm](http://www.newton.dep.anl.gov/askasci/zoo00/zoo00755.htm)).

4) Set up a O2 -> CO2 "reaction" (the lungs) just to get the molar ratios of each. This is the tricky part of the problem because this depends quite a bit on human physiology, and probably varies somewhat by the individual.

5) Plug these values into the radial form of Fick's law of diffusion, and solve the resulting equation for R.

[If I get more time, I'll do this rigorously.]

<comment><USER2> I am not sure how much Fick's law has any influence. Most "mixing" inside and outside the bubble will be done by convection rather than by diffusion. Diffusion should have little to no influence on the whole problem. Assuming that you want to take into account mass transport through the phases (Air<->Water), you would have to apply Henry's Law.

<comment><AUTHOR> Whoops. You're right. That's what I get for solving a mass transport problem at 5:00 AM.

</comment></comment></comment><comment><USER3> > The atmosphere is about 20 percent oxygen. People breathe this in, and > breathe 15 percent oxygen out

That's standard air pressure though. As you dive and pressure increases, the metabolized oxygen stays roughly constant (metabolic rate is independent of pressure) but the "amount" of oxygen breathed in shoots up because the inspired volume does not change either (and there's more oxygen in the same volume under pressure). Thus the "extraction efficiency" goes down (you proportionally breathe out more and more oxygen which wasn't metabolized).

This is why closed-circuits rebreathers are so much more efficient than open- circuit cylinders, and the o2 cylinder is so much smaller (excluding safety cylinders): at atmospheric pressure an open circuit may "waste" 75% of the oxygen, at depth it may be >90%. A rebreather or a closed environment (under pressure) will allow much more efficient oxygen use.

</comment><comment><USER4> There is a spider that does something like this. It picks a bubble and uses it to survive underwater. The bubble exchanges some oxygen from the water, so it last more time (but not indefinitely).

Link: Underwater Spider Spins Itself an Aqualung: [http://news.sciencemag.org/sciencenow/2011/06/spiders.html](http://news.sciencemag.org/sciencenow/2011/06/spiders.html)

Previous discussion (about the spider): [https://news.ycombinator.com/item?id=2643142](https://news.ycombinator.com/item?id=2643142) (93 points, 734 days ago, 9 comments)

<comment><USER5> There's a Studio Ghibli short that they show at the museum in Japan which features a spider like this, see here: [https://en.wikipedia.org/wiki/Mizugumo_Monmon](https://en.wikipedia.org/wiki/Mizugumo_Monmon)

</comment></comment><comment><USER6> A person can survive in an air bubble but after 13 hours he will start having a trench foot condition: [http://en.wikipedia.org/wiki/Trench_foot](http://en.wikipedia.org/wiki/Trench_foot)

<comment><USER7> According to the article you linked, trench foot occurs in temperatures up to 60°F. The water temperature off the cost of Nigeria this time of year is closer to 80°F, so I'm guessing trench foot wouldn't be a problem.

<comment><USER8> The temperature at a depth of 30m is certainly not 80°F.

</comment></comment></comment><comment><USER9> From the comment that explains a lot, but misses the point completely (exchange of oxygen between the bubble and the sea to replenish oxygen in the bubble):

Don't ask a chemistry question on a physics board ;-)

<comment><USER10> And in a comment to that comment: "Using imperial measures in a discussion on Physics?" hehe :-)

<comment><USER9> :-)

</comment></comment></comment><comment><USER11> Does anyone know how survivable rapidly surfacing from 30 meters would be? Wolfram Alpha has the pressure down there at almost 400 kPa (compared to 100 kPa) so my suspicion is "not at all", but I'm not really familiar with the tolerances and life expectancies with the bends.

30 meters is just agonizingly close to the surface though, well within what most adults could do horizontally (particularly if their life depended on it.) Being that close to the surface, but still so far away, must be absolutely awful.

<comment><USER12> The Royal Navy has a 30m deep "pool" (more of a water filled tower) that they use for submarine escape training:

[http://en.wikipedia.org/wiki/Submarine_escape_training_facil...](http://en.wikipedia.org/wiki/Submarine_escape_training_facility)

So it must be fairly survivable.... Maybe it's staying for a long time at that pressure that causes the problem?

<comment><USER13> They no longer use it - too many people were dying in the training, and modern submarines go much deeper anyway.

If you want to have a go, you can go to Nemo33 in Belgium still.

<comment><USER14> The too many seems to be 2 death in 60 years with up to 4500 trainee a year during the 60s/70s.

Cf : [http://www.worldnavalships.com/forums/showthread.php?t=3787](http://www.worldnavalships.com/forums/showthread.php?t=3787) [http://www.subescapetraining.org/History1.html](http://www.subescapetraining.org/History1.html)

</comment></comment></comment></comment><comment><USER15> I'm curious how he didn't succumb to hypothermia. Circulating ocean water would conduct heat away from his body pretty quickly. Granted, he's near the equator, not the arctic, but still...

<comment><USER16> I don't think the water was circulating all the much - it was inside the vessel. It was rising, but not circulating.

Also, he may have been able to stay out of it at least at first, till it rose.

</comment></comment><comment><USER17> Bonus points:

This question assumes the interface between the water and the air is at rest. Think of a bubbler in an aquarium. Would splashing around periodically increase or decrease your survivability? That is, would the increased rate of gas exchange at the air/water interface be greater or less than the increased rate of gas exchange at the air/blood interface?

Double super extra bonus points if you can plot this based on credible data.

Edit: Or alternatively - what if he just breathed out through a tube placed under the water such that his bubbles were recaptured?

Edit 2: I wonder if dehydration due to the salt exposure also played a role in making his situation more survivable. Would dehydration have reduced total air/blood gas exchange in a meaningful way?

</comment><comment><USER18> Related:

[http://www.isracast.com/article.aspx?id=63](http://www.isracast.com/article.aspx?id=63)

<comment><USER19> Warning: Audio will start playing on this site. Scared the shit out of me!

</comment></comment><comment><USER20> Glad to see Nigeria is on Hacker news for positive news :)

<comment><USER21> Not sure if ship sinking and 10 crew dying and 1 one barely surviving is good news... :(</comment></comment>


Someone claiming to be Satoshi Nakamoto just wrote to the Bitcoin developer list - <AUTHOR> http://lists.linuxfoundation.org/pipermail/bitcoin-dev/2015-August/010238.html <comment><USER2> The headers indicate that this email was legitimately sent by email@example.com

Satoshi used this email address in his first announcement of bitcoin.

I have never seen anything PGP signed by Satoshi, thus the lack of a signature does not indicate forgery.

Further to that point Satoshi meticulously employed strong operational security techniques, making it very likely that he/she/they destroyed the private key after withdrawing from the community.

The evidence isn't strong either way, however it's certainly leaning towards the email being legitimate.

Received: from mail.vistomail.com (vistomail.com [126.96.36.199]) by smtp1.linuxfoundation.org (Postfix) with ESMTP id 2175813F for <bitcoin- firstname.lastname@example.com>; Sat, 15 Aug 2015 19:00:05 +0000 (UTC)

[http://article.gmane.org/gmane.comp.encryption.general/12588...](http://article.gmane.org/gmane.comp.encryption.general/12588/)

( Originally posted on reddit [https://www.reddit.com/r/Bitcoin/comments/3h4goc/satoshi_nak...](https://www.reddit.com/r/Bitcoin/comments/3h4goc/satoshi_nakamoto_speaks_about_bitcoin_fork/cu452nu) )

<comment><USER3> The header says that it's from vistomail.com. It doesn't have to be firstname.lastname@example.com.

<comment><USER2> The header indicates that it was sent via webmail.

Assuming vistomail.com is not compromised, then that indicates it was in fact sent by firstname.lastname@example.com

(I'll also note that they do not appear to expire registrations ever)

</comment></comment></comment><comment><USER4> I'm no stylometrist, but that sounds so much like every other internet fake that we're going to demote this story pending some evidence.

<comment><USER2> My post contains some evidence.

</comment></comment><comment><USER5> Just lemme vent it out: shit shit shit shit shit shit shit. Oh shit.

Anyways, rationality now kicking in, and until proven otherwise, I'll assume it is not the real Satoshi.

Regardless, I think it's fair point this person raises. I'm all for lower fees. In my country, the current transaction fee costs 2 rupees, and I wouldn't buy a 5 rupee lollipop for 7, and raising the blocksize sounded like a quickfix, but it comes at a terrible cost. I can't imagine bitcoin being bitcoin if the blockchain become so hideously large to the point hobbyists couldn't download and run a full node on their pcs. Not to mention the obvious harmful precedence it sets if the lead devs bully their way into a community project (which is the defacto super cryptrocurrency)

IMHO the community should put resources into finding a sustainable solution.. lightning networks are a great hack, and i'm waiting on them with bated breath.

If you don't know about them, watch the video on this: [https://lightning.network/](https://lightning.network/)

<comment><USER6> > Anyways, rationality now kicking in, and until proven otherwise, I'll assume > it is not the real Satoshi.

Why? So far there hasn't been any evidence pointing towards it not being Satoshi.

I mean sure, the prior probability is low, but that's it. it appears to have actually been sent by vistomail to the linux foundation. Unless you want to assume that this was an IP spoofed mail or vistomail was cracked? No evidence of that so far.

</comment></comment><comment><USER7> I really doubt it is him. The writing style doesn't seem to match.

</comment><comment><USER8> Well that proves at least _someone_ feels threatened enough by the Bitcoin fork's possible success. Interesting move on the counter party parts, I would expect something more along the lines of a counter point to Mike Hearn's blog posting rather than this.

I also find it kind of sobering the kind of enemies you would have if you're fork of a project managed to "kill" its viability.

<comment><USER9> I don't see it as a issue / question of whether or not the forks possible success, but the way which the fork is being pushed without wide and near unanimous acceptance (assuming that was a core principal and vision).

If the original intent was to made it super hard to change the rules, but now the rules are being changed by a 'few in power', I could see how that would be concerning in general.

Regardless, this is rather interesting to watch play out. Especially for all the companies that have popped up.

</comment></comment><comment><USER10> For reference here is a description of the fork being discussed.

      - Mike Hearn [1]
      - Redit [2]

\--

      [1]: https://medium.com/@octskyward/why-is-bitcoin-forking-d647312d22c1
      [2]: https://www.reddit.com/r/Bitcoin/comments/3h42cz/bitcoin_is_forked/

</comment><comment><USER11> What would be the actual consequence of Nakamoto declaring Bitcoin a "failed Project"?

<comment><USER6> Nothing. The genius behind Bitcoin is that it doesn't stand or fall on one person's opinion.</comment></comment>


Climate – the ultimate command line tool for Linux devs - <AUTHOR> https://github.com/adtac/climate <comment><USER2> [http://www.faqs.org/docs/artu/ch01s06.html](http://www.faqs.org/docs/artu/ch01s06.html)

pay attention to [McIlroy78] in particular.</comment>


Reactiflux - <AUTHOR> https://www.reactiflux.com/ <comment><USER2> Reactiflux is a great place to hang out, ask questions, and discuss React and related technologies. (I'm just a wee bit biased, because I'm an admin there.) Come join us!</comment>


Ask HN: Why would Facebook/Oculus not just give away/discount VR headsets? - <AUTHOR> Facebook needs a large user base for VR to get going.
And given that they are prepared to spend billions buying Oculus, why would they not just spend the money to give away the headsets, or maybe massively discount them down to $10 each for example?
The new Oculus Go standalone VR headset is said to be only $200.  At this price Facebook could spend $500,000,000 and get a user base of 2.5 million.
I would have thought getting this initial user base is the important part of the equation.
So why don't they do it.... give away the headsets? <comment><USER2> First off because when you give something away you can't write it off for a loss meaning they have to sell it for something which they are, $200.

Do you have any idea on what it costs to manufacture a VR headset?

Plus why would you want to kill the margins in the hardware business before it even starts? Usually margins are eaten when things get competitive.

At the end of the day,incentives only work so much.

</comment><comment><USER3> Why should they give them away?

Spending _half a billion dollars_ to get 2.5 million customers is - probably - incredibly stupid.

For _half a billion dollars_ , how many customers/users do you think Facebook can get _in almost any other manner_?!

The incremental cost of customer acquisition for them is, effectively, $0. They aready have the infrastructure. They already have the network effects. They already have lots of other things.

Why should they spend _half a billion dollars_ giving away VR headsets? Because you don't want to pony-up $200?</comment>


Show HN: Shisetsu – An RPC-Like Protocol on Top of Redis - <AUTHOR> https://github.com/KixPanganiban/shisetsu <comment><USER2> So, basically, you allow network programmer to not understand network programming, which is considered a major (main?) benefit, but at the expense of operators needing _one more service_ to maintain?

How many programmers need to write a client and how many users would need to run an additional service? Redis clearly doesn't pay off here.

<comment><AUTHOR> > So, basically, you allow network programmer to not understand network > programming, which is considered a major (main?) benefit, but at the expense > of operators needing one more service to maintain?

That's true. My ultimate goal is to have a way to reconcile parts of a stack written in different languages to interop, without the burden of having to learn network programming (ie strict RPC). While it's true that Redis is yet another service, it is precisely that which I hope would appeal to some people if they use Redis anyway.

> How many programmers need to write a client

Well, when implementations in other languages come out (PHP and Node are in the works), programmers don't even have to 'write a client' at all. The point of the project is to be able to swap out existing functions with a Shisetsu- wrapped remote executables for easy integration.

> how many users would need to run an additional service? Redis clearly > doesn't pay off here.

See my first answer. If they don't want to run an additional service, they can use existing RPC protocols instead (ZeroRPC, Thrift, ZeroC Ice) at the cost of additional development to integrate those.

<comment><USER2> > While it's true that Redis is yet another service, it is precisely that > which I hope would appeal to some people if they use Redis anyway.

It doesn't make sense. Instead of a system with one service one now has a system with two services, each of which can fail in its own unique way. More moving parts for absolutely no reason at all. This way you could add there ZeroMQ or AMQP, just to appeal to people who have these two already deployed.

>> How many programmers need to write a client

> when implementations in other languages come out [...], programmers don't > even have to 'write a client' at all.

So the main benefit of "not needing to use network sockets to write a client" drowns down the toilet. Have you ever needed to implement your own XML-RPC client? I only needed that once, and only because I insisted on using a runtime without a satisfactory one. This is what _libraries_ are for, not sprinkling a database over the smallest things.

> The point of the project is to be able to swap out existing functions with a > Shisetsu-wrapped remote executables for easy integration.

This is the whole point of _RPC_ , not putting _Redis_ there.

> If [users] don't want to run an additional service, they can use existing > RPC protocols instead (ZeroRPC, Thrift, ZeroC Ice) at the cost of additional > development to integrate those.

So you say Redis acts as a magic faerie dust that eases integration process? How?

<comment><AUTHOR> Thanks for your insights. Clearly, I should have put more thought about the whole project before showing it to the world. You're absolutely right on most points, this introduces more moving parts, another unnecessary service, and defeats the purpose of an RPC. In fact, I have had to implement my own XML-RPC client (and an RPC-over-HTTP client too) on a certain occasion, and I tried to remember my gripes on that occasion and avoid them with this approach.

Regarding your last line:

> So you say Redis acts as a magic faerie dust that eases integration process? > How?

I guess what I said was too vague. It should have been "it makes an RPC-like system easier to integrate when you _already have Redis_ ".

Shisetsu is not a magic bullet. It won't make things magically easier for everyone. All it is really is a niche project that, given you already use Python and Redis, is something for you to consider. If not, then you can move along, there's absolutely nothing to see here. :)

<comment><USER2> >> So you say Redis acts as a magic faerie dust that eases integration process? How?

> I guess what I said was too vague. It should have been "it makes an RPC-like > system easier to integrate when you _already have Redis_ ".

OK, let's work with this: in what way is Redis helping here over XML-RPC or JSON-RPC? What kind of problems does it solve that are pain in the ass with the other RPC protocols? (And now don't take my word that it doesn't, try to justify your choice, and next time start your README with that.)

I'm not against custom protocols or adding daemons to a system (I've recently(ish) written a set of RPC daemons with their own protocols; the daemons are replacing Celery task queue, which itself is a widely tested software), they just have a decent reason to be introduced. Additional complexity just needs to pay for itself somehow.

<comment><AUTHOR> Thanks man, I really appreciate you giving me points and guiding me here.

> OK, let's work with this: in what way is Redis helping here over XML-RPC or > JSON-RPC? What kind of problems does it solve that are pain in the ass with > the other RPC protocols?

Redis vs XML-RPC/JSON-RPC is a mismatch. It's more of a msgpack-RPC with Redis as broker vs XML-RPC or JSON-RPC:

1\. Most brokerless RPC protocols make it difficult to inspect the message on the fly. With Redis, you can open up redis-cli and subscribe to the appropriate channels to extract the raw messages. For most users this might not mean anything, but for others this could mean easier debugging, measuring performance, and so on.

2\. msgpack's serialized format is small. This makes it faster to send it across a network especially when the message is considerably large (vs, say, JSON or XML). That, and msgpack itself performs serialization/deserialization quickly on its own. see: [http://webcache.googleusercontent.com/search?q=cache:hYaRwEU...](http://webcache.googleusercontent.com/search?q=cache:hYaRwEUpbdwJ:maxondev.com/serialization- performance-comparison-c-net-formats-frameworks-xmldatacontractserializer- xmlserializer-binaryformatter-json-newtonsoft-servicestack- text/+&cd=2&hl=en&ct=clnk&gl=ph) (I'm using a Google Cached link because main link seems to be down)

> I'm not against custom protocols or adding daemons to a system (I've > recently(ish) written a set of RPC daemons with their own protocols; the > daemons are replacing Celery task queue, which itself is a widely tested > software), they just have a decent reason to be introduced. Additional > complexity just needs to pay for itself somehow

I totally agree. However, the idea of introducing Redis into the equation to use as the broker didn't seem like additional complexity to me because a lot of other network messaging protocols rely on a broker anyway. For example, the widely popular Web App Messaging Protocol (WAMP) ([http://wamp- proto.org/why/](http://wamp-proto.org/why/)) relies on brokers to decouple callee/caller on an RPC operation. ZeroRPC, another popular RPC choice, uses ZMQ.

For Shisetsu, what I see is the main advantage of Redis is that I can delegate multiplexing work to it instead of having to code myself, making the protocol and its implementation easier to manage, just by relying on Redis' PubSub. The client and server don't even have to know each other's address and port, they just have to know which Redis instance to connect to and assume that there exists one of the other to work with. Redis also provides the channel buffer and the queue instead of me having to write those as part of the client/server code, which means anyone else looking to implement the protocol in another language wouldn't have to deal with those as well.

<comment><USER2> > Redis vs XML-RPC/JSON-RPC is a mismatch. It's more of a msgpack-RPC with > Redis as broker vs XML-RPC or JSON-RPC:

I used it as a sort of mental shortcut. MessagePack is very similar in data model to JSON or what XML-RPC allows, so I treat them as essentially the same. I was comparing the architectures where the client connects directly to RPC server, as opposed to connecting to a third party (broker, Redis in this case), which is supposed to relay the communication.

> 1\. Most brokerless RPC protocols make it difficult to inspect the message > on the fly. With Redis, you can open up redis-cli and subscribe to the > appropriate channels to extract the raw messages. For most users this might > not mean anything, but for others this could mean easier debugging, > measuring performance, and so on.

This sort of things is usually implemented using logging, but I agree that while _usually_ it's not an important feature, there are cases when it is extremely useful.

> 2\. msgpack's serialized format is small. [...]

Though this doesn't concern Redis, and could be a wire protocol over raw TCP.

> [...] the idea of introducing Redis into the equation to use as the broker > didn't seem like additional complexity to me because a lot of other network > messaging protocols rely on a broker anyway.

But we're not talking about messaging protocols, we're talking about RPC protocols/systems. You introduce two services (Redis + RPC server) for a task that usually was carried out by one. This is why I claim it's greater complexity than usual.

> ZeroRPC, another popular RPC choice, uses ZMQ.

I'm not sure it is that popular. Thrift, Protocol Buffers, and gRPC seem much more widely used, and XML-RPC is a little longer on the market, so it probably got a fair share of RPC use.

And ZeroRPC doesn't seem use broker, just a ZeroMQ protocol. ZMQ is in this setting more like a transport protocol than a separate service to dispatch requests and responses.

> The client and server don't even have to know each other's address and port, > they just have to know which Redis instance to connect to and assume that > there exists one of the other to work with.

So instead of knowing an address and port of an RPC server, client needs to know address and port of Redis. This doesn't seem to be much of a gain. At best, Redis acts as something analogous to port mapper in this setting (though it relays all the communication instead of telling the client where to connect to).

> Redis also provides the channel buffer and the queue instead of me having to > write those as part of the client/server code, which means anyone else > looking to implement the protocol in another language wouldn't have to deal > with those as well.

Job queueing is somewhat outside of the RPC protocol, though I agree it can be useful. The RPC system I mentioned I wrote does have a queue and we use it.

Though I don't quite understand what you mean under "channel buffer" term.</comment></comment></comment></comment></comment></comment></comment>


Canceling your Model 3 deposit? Don't count on a timely refund (2017) - <AUTHOR> https://www.wired.com/story/canceling-your-model-3-deposit-dont-count-on-a-timely-refund/ <comment><USER2> Is it relevant? Article is from 07.31.17

<comment><AUTHOR> More relevant now than on 07.31.17; see, for example: [https://www.wsj.com/articles/tesla-cant-make-its-cash- proble...](https://www.wsj.com/articles/tesla-cant-make-its-cash-problems- disappear-1525296582) and [https://qz.com/1260135/will-elon-musks-tesla-run- out-of-cash...](https://qz.com/1260135/will-elon-musks-tesla-run-out-of-cash- before-it-turns-around-model-3-production/)</comment></comment>


Speed Up Your Rails Specs - <AUTHOR> http://blog.originate.com/blog/2014/02/27/improve-your-rails-specification-speed-by-10x/

<comment><USER2> "expect(widget_factory).to have_received(:create).with({name: 'sprocket'})"

Even better:

expect("my_service.rb", "line X").to be("widget_factory.create")

Or yet better, simply:

; # realize that testing the exact implementation is bullshit

</comment><comment><USER3> RE: Developing Decoupled Code

Extra complexity cost is insane and probably not worth it. Basically you move all your crazy stubbing and mocking out of test code and into application code. Do not do this unless you really, really need this kind of dependency injection.

<comment><USER4> Back in the day, we laughed at people who stuffed all their code into button click handlers.

Now, we mock people who _don 't_.

My, how different the web is!

<comment><USER3> That's a straw man. I see how you made it up for a joke, but it's still confusing. "Don't overengineer" is not the same as "stuff all your code into button click handlers".

</comment></comment></comment><comment><USER5> I like that the "tightly coupled" service class is 3 extremely simple LOC that should probably just be in a controller anyway, which is "fixed" by creating a class with 3X as many methods and at least twice as much logic to follow, plus a spec twice as long as the original class that tests nothing other than the fact that when you call a method with a set of arguments, that method receives that set of arguments.

</comment><comment><USER6> I have a massive, and probably not entirely proportionate, negative reaction to constructor injection. It's in my mind the ultimate example of making your code more complex in service of your tests.

An approach that I've used recently (which is similar enough to parameter- style injection, is to use `class_attribute` at the top of a class to call out dependencies and explicitly provide a default value - so that consumers of your class don't need to know what exactly a WidgetFactory is supposed to be:

        class Foo
          class_attribute :some_service
          self.some_service = SomeService.new
        end

A nice advantage of this approach is that you can provide a different implementation of some_service on an individual instance of a class, which helps restore your code to a sane state when you're done with an individual test, like so:

        describe Foo
          subject(:foo) { Foo.new }
          before { foo.some_service = double(SomeService).as_null_object }
        end

On top of that, though, I think calling out dependencies really only makes sense when that dependency involves something external to the codebase itself, or is otherwise secondary to the main purpose of the class. So stub out a repository, or a logger to your hearts content - but there's little utility in stubbing out Widget in a WidgetBuilder class IMO.

</comment><comment><USER7> The problem with dependency injection in this manner is that your test code is using a fake class that's injected while your production code is using a real class.

This is fine if all you want to do is unit test your classes. That's beside the point though -- I would posit if you're bolting dependency injection onto your interfaces just to make your tests faster, you're not doing it right. Instead, bring that dependency injection into the forefront: to the constructor. Yes, this means to make an object, you'll have to make another object first, both in your production and test code. But now your interface acts the same way in both places. If this sounds very Java-like, well... maybe Java got it right. (There was an article on the Twitter blog in the early days about this but I can't remember where it is now...)

Of course, this _is_ going to introduce complexity and now you have to decide whether that complexity is worth it.

</comment><comment><USER8> Maybe if ruby didn't take so long to load rails code, this sort of complexity wouldn't be necessary...</comment>


Teams successful Carmack Prize attempt - <AUTHOR> http://rocketry.wordpress.com/2012/09/14/team-claims-carmack-prize/

<comment><AUTHOR> Carmack will have to judge officially, of course, but it looks like a good claim.</comment>


There's More to Life Than Being Happy (2013) - <AUTHOR> http://www.theatlantic.com/health/archive/2013/01/theres-more-to-life-than-being-happy/266805/?single_page=true <comment><USER2> > Having children, for example, is associated with the meaningful life and > requires self-sacrifice, but it has been famously associated with low > happiness among parents, including the ones in this study.

I have to either strongly disagree with the outcome of this research or disagree with the definition of happiness used here. If you were to ask parents (myself included), if having children makes you happier in life, I think you would get a resounding yes it does! Having kids is stressful at times, and you can be constantly tired and stretched to your limits but the heights of joy one experiences as a parent has no bounds. I'd hate to think that the majority of parents think of child rearing as some sort of meaningful suffering...

<comment><USER3> I have no children, but those studies always seem to focus on parents who are, at that moment, raising small children. They are asked at the most stressful point in the process if they are happy, of course they'll say no. These studies need to amortize happiness levels over a number of points in the childs life: birth, a few intervals likke 2/5/10/15, and once the child has moved on and left their house.

</comment></comment><comment><USER4> I'm curious to know how others deal with meaning in the context of their jobs.

I certainly live for things outside of work, but at the same time work is a necessity to survive. How do you balance how much time you devote to work when your source of meaning is unrelated?

<comment><USER5> > _work is a necessity to survive_

While your statement might be true very broadly, you don't need to work anywhere near as much as you think you do to survive.

I worked 9-5 for 18 months and saved enough money in that time to then spend 2 years driving Alaska-Argentina. [1]

I've just been working 9-5 for 4 years and have now quit and have saved enough money to spend two years driving around Africa [2], then hpefully 2 years from Europe->SE Asia.

If I only wanted to earn enough money to "survive" (i.e. food and shelter) I bet I only need to work 2 months a year. Less when I throw in hunting, doing my own maintenance and growing my own vegetables.

[1] [http://theroadchoseme.com/the-price-of- adventure](http://theroadchoseme.com/the-price-of-adventure)

[2] [http://theroadchoseme.com/new-jeep-new-adventure- africa](http://theroadchoseme.com/new-jeep-new-adventure-africa)

<comment><USER6> > Less when I throw in hunting, doing my own maintenance and growing my own > vegetables.

Why don't you consider this as work?

<comment><USER7> I can't answer the question for OP, but for me it would be

* Pursuing my own goals

* Working directly on something which benefits me

* A lot less boring than sitting in the office all day

* Not sitting in an office at all

* Nature

* Real satisfaction from accomplishment

* Don't have to when I don't want, i.e. I have to deal with the consequences (e.g. no food) but nobody can make me responsible for this and fire me

* No commute through crowded cities

* No recycled, AC'd air

* Did I mention not sitting in an office?

I think I have to stop now or I get even more depressed than I already am.

<comment><USER8> I think what the parent meant to say was "why don't you consider doing that as your main source of income?"

<comment><USER7> I think because this would be only about being self-sustained, without generating additional income. And there lie the downsides: No early retirement, no health care, no social insurance..

</comment></comment></comment></comment></comment></comment><comment><USER9> sounds a lot like we sour on the "pure" happiness of merely providing for our own selfish needs, then have children, a deliberate hardship, to satisfy our "un-selfish" need for meaning. this is pointed out by the article's scientific sourcing. but - devil's advocate here - isn't having children also fundamentally selfish? (says person in a quite possibly crowded room of parents)

<comment><USER4> I think having children may be fundamentally selfish, but not raising children.

<comment><USER10> I'll add to this that raising children can be selfish as well if you overdo it and apply "Hollywood morality" in your life - i.e. "they hurt my child, so I'll hurt hundreds or even thousands of people to get my revenge on the one who did it to my child, and it's OK and I am a good person".

That is, doing things for your own benefit at the expense of everyone else around is selfish, but I believe so is doing things _for your loved ones_ at the expense of the society at large. Call it recursive selfishness, or sth.

</comment></comment></comment><comment><USER11> >by ... "giving" rather than "taking" \-- we are not only expressing our fundamental humanity, but are also acknowledging that that there is more to the good life than the pursuit of simple happiness.

Yeah but you can do both. And pursue happiness for others which often as a side effect makes you happier in yourself.

The article mentions Frankel and the holocaust. If Hitler had had a philosophy of making people happy rather than "German expansionism, belief in the superiority of an 'Aryan race' and an extreme form of German nationalism", as Wikipedia puts it, things could have been more chilled. You can overdo the deep philosophy and end up avenging some historical slight or slaughtering unbelievers when just being nice would work fine.

Disclosure - member of Action for Happiness which promotes that sort of stuff.

</comment><comment><USER12> This seems like an unsophisticated view of what 'happiness' is. In my view, you have a more-or-less conscious reason for doing everything you do, with happiness being at the top of the chain, the state you build and maintain for no other reason. Viewed from within that frame, it seems like the response to this essay would be, if not to be more happy, why pursue a life with great purpose and meaning?

Edit--it feels more pompous not to cite my sources than to do so, so I'm getting this mainly from Aristotle's Nichomachean Ethics, and equating "happiness," with what he calls "eudaimonea," which is not to be falsely equated with a simple good feeling.

<comment><USER13> > In my view, you have a more-or-less conscious reason for doing everything > you do, with happiness being at the top of the chain, the state you build > and maintain for no other reason.

What you seem to be describing is a concept called "value" in the philosophy of ethics. "Happiness" is a pretty universal value. But it's not the only one, "Freedom" for instance. There's some hypothetical thought experiment that illustrates this, about people being offered to get hooked up to a VR eternal- happy-machine simulator, it's a bit more nuanced than that, you should probably look it up if you want to know :-)

Anyway, it seems to me that the article is arguing that "Caring for/Giving to others" is somewhat of a neglected, "forgotten" value.

But then, I happen to agree with most of what it says.

</comment></comment><comment><USER14> A great story. Made me think of the story in the movie 'Woman in Gold' (recommended).

</comment><comment><USER15> very nice article. The book, Man's Search for Meaning, was listed as one of the 10 most influential books in US

</comment><comment><USER16> Contentedness might be a more logical goal. Be emotionally open to either happiness or sadness by default.

</comment><comment><USER17> Moral of the Story don't be a Jerk, find your special purpose

</comment><comment><USER18> Discussed at the time: [https://news.ycombinator.com/item?id=5123223](https://news.ycombinator.com/item?id=5123223). This is not a dupe, because that was well over a year ago.</comment>


Apple sues iPhone CPU design ace after he quits to run data-center chip upstart - <AUTHOR> https://www.theregister.co.uk/2019/12/09/apple_nuvia_ceo_suit/ <comment><AUTHOR> Looks like his intention _may_ have been to try and get acquired by Apple, but looks like that won't be happening any time soon!

</comment><comment><USER2> > They also allege that Apple's evidence in its complaint, notably text > messages he exchanged with another Apple engineer and conversations with his > eventual Nuvia co-founders, were collected illegally by the highly paranoid > iPhone maker.

Oh so mobile device managers DO collect text messages if the employer desires? Why is this not a bigger issue?</comment>


HTTP Headers Every Web Developer Should Know - <AUTHOR> http://tiarnan.com/http-headers-every-web-developer-should-know/

<comment><USER2> _Server side frameworks can use [the X-Requested-With header] to determine the type of content to return, such as JSON if the header is present and HTML otherwise._

Isn't that what the Accept header is for? How else do servers typically use X-Requested-With?</comment>


Seven Languages: A Pragmatic Guide to Learning Programming Languages - <AUTHOR> http://www.pragprog.com/news/seven-languages-in-seven-weeks-now-in-beta?1012149

<comment><USER2> I bought the book and love it so far; it is not yet complete but the intents of the author are clearly geared toward a rather deep (limited by space though) review of the selected languages;

all this is supported by meaningful projects to get passed the syntax and have a feel of the core decisions that underline every language,

good work so far!

</comment><comment><USER3> Interesting language choices. I suppose they were picked to provide an introduction to various paradigms. Let's see:

Ruby - Dynamically typed, scripting language

Io - Not sure. Smalltalk-esque object orientation, I guess.

Prolog - Crazy logic programming!

Scala - Functional? JVM? (does he really need this and haskell and Clojure?)

Erlang - I guess this is like a demonstration of concurrency and actors? Or something?

Clojure - Woo! A lisp dialect!

Haskell - Functional, strongly-typed.

I think I would take out Scala and put in something more imperative and different, like Go, C#, or Lua. I might also replace Ruby with Python. I learned Ruby as my first language and I find myself using Python a lot more anyways (Ruby is sexier though, I admit). The idea itself might not be sound. (A language a week? Talk about a crash course!)

I'm tempted to get it anyways. It's a unique approach, so props to the author for that.

<comment><USER4> Another book taking this kind of horizontal approach explains different programming paradigms rather than concrete languages: "Concepts, Techniques, and Models of Computer Programming" by Peter Van Roy and Seif Haridi (<http://www.info.ucl.ac.be/~pvr/book.html>). It is IMHO a deeply illuminating book.

<comment><USER5> Yeah, CTMCP is becoming a SICP-like acronym. Here's the for Dummies version

<http://www.info.ucl.ac.be/~pvr/VanRoyChapter.pdf>

</comment></comment></comment><comment><USER6> I always wanted to learn Prolog. Is there still a use for it these days?

<comment><USER7> I just learned a bit of it for a class in programming languages(paradigms, assembly(simple), prolog, haskell, perl) prolog is a bit of a pain to work with if the problem is mildly imperative in nature. It is very useful if the problem is or can be written in a declarative fashion. That's just my take on it from learning a bit of it for a class though. I am sure if you are a veteran at it you will be able to make it bend to might.</comment></comment>


Ask HN: What intranet solution do you use at your company - <AUTHOR> We are a small company who is growing quite a bit (+10 people now, but expect more people soon). We use Dropbox for sharing our knowledge, but it doesn't seem to be scaling with more people. What do you use at your organisation? <comment><USER2> I'd suggest something like a Gollum wiki - office types can edit it via the browser, tech types can clone the repo and make changes to markdown files (and then push their changes back, obviously).

</comment><comment><USER3> Have a look at [https://basecamp.com/](https://basecamp.com/)

There's a couple of good answers in "What do you use for company-wide documentation" from 3 weeks ago [https://news.ycombinator.com/item?id=12540678](https://news.ycombinator.com/item?id=12540678)</comment>


Holberton Wants to Be a Different Kind of Coding School - <AUTHOR> http://techcrunch.com/2015/11/27/holberton-wants-to-be-a-different-kind-of-coding-school/?hn=true <comment><USER2> I am happy to see other models being tried. I agree that 8-12 week courses is not enough to become competent. However I am not sure the part-time mentors rather than full-time teachers thing will work. Time will tell of course.

</comment><comment><USER3> I get the feeling that students would be heavily short changed via this program.

I realize that there are issues with the traditional university model. However, students need to learn about system architecture, theory, algorithm analysis, etc.

I get the feeling that this is nothing but a training program for a particular job. (Also, it may be a way to keep labor from leaving and/or over leveraging salary negotiation [fixed training program])

<comment><USER4> If this is really nothing more than an apprenticeship program I still think this can be a great model. I don't think they should use the word school in the name though. As for the salary negotiation point, most junior developers have no leverage (uggg ... I hate that term, junior developer, it is so arbitrary). I do wonder what the financial model is though. I suspect they are double dipping, but think it would be fairest to have corporate sponsors. Paying tuition for a non accredited school is a very big gamble.

UPDATE: Ok, so it is "free" for the first students. I put it in quotes because you must be able to afford not working for two years, which is hardly without cost. This basically rules out those who can not be supported by their parents or partners, and supports privilege being passed from one generation to the next. I would much prefer a paid apprenticeship model for those that do not wish to get a university degree, which while not free is attainable to all through deferred payment (student loans).</comment></comment>


Bitcoin Is Creeping into Real Estate Deals - <AUTHOR> https://www.wsj.com/articles/bitcoin-is-creeping-into-real-estate-deals-1511265600 <comment><USER2> This article seems to conflate using the block chain to verify title transfers, with using Bitcoin to buy/rent property, as it discusses both without really drawing a distinction.

Can anyone make sense of what's going on here, and in particular why a municipality would prefer a block chain to a public database of digitally signed records?

<comment><USER3> It would allow two private parties to transfer title between themselves without permission or action by the municipality.

Not sure why the municipality would want that. Also would create a slew of issues around what happens if you lose the private key to your house, or worse, it gets stolen.

<comment><USER4> > if you lose the private key to your house

Haha. Sorry that I laugh, but using blockchain for land ownership is not about backing bitcoins with square meters, but about the tamper-proof, immutable, public and resilient aspects of the data you can store in the bitcoin blockchain.

The only private key that would be involved in this process would come from the government, which could just sign messages with some standard (encrypted) format that just maps addresses to individuals/entities. This way even notaries will become one day obsolete (or they will simply be there to make sure the blockchain entry happens and the transfer of the assets as well, in an atomic way; and the assets don't even need to be crypto in this case).

<comment><USER5> If the government instead stored the deed transfers in a database with digital signatures and exposed a read-only API to it, wouldn't that solve this problem better?

What's the concern? That the government makes you not the owner of your house anymore? And if your government does that, what's the difference between fighting for a government that respects the rule of law versus fighting for a government that puts house deeds on bitcoin?

Thanks!

<comment><USER6> The difference is that the bitcoin wastes more energy to accomplish that.

<comment><USER7> but is guaranteed to accomplish that

<comment><USER5> If the government was going to take your house away from you anyway, why would they care what's on the blockchain? This is so contrived...

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> In Canada, buying/selling Bitcoin is subject to capital gains in the same way buying/selling stocks are. I wonder if you have to pay capital gains if using Bitcoin directly as a currency- as in through the purchase of a house or other expensive asset.

<comment><USER9> I think yes, might be wrong but it's logical (logic and taxes don't always mix, so I may be wrong).

You bought Bitcoin at $1 and sell at $8000 to pay for a house, you need to declare income of $7999 for each Bitcoin at the end of the year or else...

<comment><USER8> It makes sense, I guess the question is if there's language in the tax code for alternative payment sources. It's not unreasonable that someone could trade their car, and 300 shares in Google; in exchange for something of equal value.

If there is, it sucks because you're getting hit doubly for taxes on the item you're paying and the capital gains you'd be taking.

<comment><USER9> In USA even if you sold cocaine...or your mom, you need to declare it on income taxes. They might not catch selling cocaine but if they catch you with undeclared cash, they'll Al Capone you.

I'm almost certain that all countries have a catch all phrase to include any gains /income.

<comment><USER10> Not all countries have capital gains tax, so no.

</comment></comment></comment></comment></comment><comment><USER11> How will any kind of blockchain used for real-estate be de-centralized? My guess is that it will be centralized. No government would give up that much control over the property within its borders. Governments want authority to be the first to add property to the ledger to ensure it starts off in a valid state. Governments want to have the authority to seize property and enforce court decisions as well. People could get hacked and suddenly someone else owns their home, but with a centralized system, even if the government gets hacked and all property stolen, they simply fork off a previous block that was known to be valid and proceed as usual.

</comment><comment><USER12> Blockchain ≠ Bitcoin

</comment><comment><AUTHOR> Alternate Source: [https://archive.fo/5ArL4](https://archive.fo/5ArL4)

<comment><USER13> Thanks. I can't circumvent the paywall either with Google, nor Facebook, nor the E-Mail URL trick.

I seriously wish by now links to paywalled content that aren't archived versions should be banned from HN, especially now that circumventing these paywalls is basically impossible.

<comment><AUTHOR> You're replying to a comment with a paywal circumvention link but saying it's basically impossible?

<comment><USER13> I'm replying to a comment after already 4 attempts at circumventing have failed

The alternative is that people start commenting on an article without having read it, and that would truly turn HN into Reddit.

</comment></comment></comment></comment><comment><USER14> It is just money laundering & evading exchange controls. Would use pigeons if they were fast enough.

</comment><comment><USER15> Article headline implies Bitcoin can be used in real estate deals. Article itself describes how blockchain techniques may be used in real estate record keeping. This aligns with my understanding of how bubbles are promoted through confusion tactics, via financial press as complicit agents. Mental Note; don't touch cryptocurrencies with a barge pole.

<comment><USER12> Well, WSJ and Wall St are interesting in bubbles of all kinds, so, of course, just like ever before, they would do anything possible to separate stupid people from their money...

<comment><USER15> Some markets are more false than others. With cryptocurrencies 1) you can't measure intrinsic demand, so you don't know if a price increase is being driven by sheep-like speculators or real buyers who want to hold the asset for its own sake. 2) you can't validate counterparty identity so people can buy and sell with themselves, thereby creating a false sense of market demand. 3) because of a lack of market transparency you have no idea at all what you can sell bitcoin for in a certain size, similar to diamonds where people pay $1000 for a commodity that they wouldn't be able to sell themselves for $100, so 'investments' in it are an instant money loss. It's one of these markets where if you aren't scamming someone yourself then you are the one being scammed. All that said, this bubble is still mid froth, and I expect my comment to get downvoted, by scammers and suckers.

EDIT (from [https://www.nytimes.com/2017/11/21/technology/bitcoin- bitfin...](https://www.nytimes.com/2017/11/21/technology/bitcoin-bitfinex- tether.html)):

> Tether and Bitfinex have insisted that the two operations are separate. But > leaked documents known as the Paradise Papers, which were made public this > month, show that Appleby, an offshore law firm, helped Mr. Potter and Mr. > Devasini, the Bitfinex operators, set up Tether in the British Virgin > Islands in late 2014.

> One persistent online critic, going by the screen name Bitfinex'ed, has > written several very detailed essays on Medium arguing that Bitfinex appears > to be creating Tether coins out of thin air and then using them to buy > Bitcoin and push the price up.

I rest my case.

</comment></comment></comment><comment><USER16> Great way for Chinese buyers to go straight from electricity bill to Canadian/Australian/Californian real estate without even moving any currency. Money laundering and capital control problems solved!

(OK the article looks to be about blockchain for confirming transaction rather than paying - but the joke still holds)

<comment><USER17> I don't see this comment as helpful. Bitcoin, and other crypto currencies, is akin to the internet when it was first introduced. It has the potential to disrupt the value business which is controlled by governments at the moment.

Worse, a lot our value system is controlled by corporations that have fees littered throughout every single transaction we do today. Crypto-Currencies have a chance to disrupt a system that is increasingly not good for the common person.

Secondly, Chinese buyers area already visiting the US and buying property and they pay cold hard cash. So not seeing what your point is here.

<comment><USER18> What are a few things you can do with Bitcoin that you couldn't do without it?

<comment><USER19> Well for one you can transfer money to anyone anywhere without any intermediates.

<comment><USER18> Why would you want that? What happens if you have a fraudulent transaction? How is it reversed? What about coercion? Blackmail, etc.

By the way, you can transfer cash without any intermediaries. You literally just hand it over.

I think blockchain in general has value, however I'm skeptical of cryptocurrencies vs. a trusted intermediary and the current setup.

<comment><USER20> >By the way, you can transfer cash without any intermediaries. You literally just hand it over.

Why would you want that? What happens if you have a fraudulent transaction? How is it reversed? What about coercion? Blackmail, etc.

<comment><USER18> Yeah, that's why you use escrow, or an intermediary service. By the way, I never claimed you should use cash. In fact, most of the criticism I have towards Bitcoin also applies to cash, as you've sarcastically pointed out.

</comment></comment></comment></comment></comment></comment></comment><comment><USER21> Non-Paywall [http://archive.is/5ArL4](http://archive.is/5ArL4)

</comment><comment><USER22> A few other cryptos are as well [http://vectorspace.ai/recommend/app/crypto_discover?query=re...](http://vectorspace.ai/recommend/app/crypto_discover?query=real+estate)</comment>


Apple genius: 'Turn off your phone' for better battery life - <AUTHOR> http://reviews.cnet.com/8301-18438_7-20128213-82/apple-genius-turn-off-your-phone-for-better-battery-life/

<comment><USER2> I think the conversation he got with the first genius was rather insulting ... that's the reason you buy a $400 _smart_ phone, to replace several other devices.

I really wish I could turn off the phone at night. I'm not a doctor and I rarely get calls at night, but sometimes it happens and when I do then something bad happened.

On the other hand turning it off once per week is feasible, but was the guy right? Why this phenomenon?

<comment><USER3> I agree it was condescending, and using your phone as an alarm is not unexpected; people have been doing that long before smartphones. Also, doctors aren't the only ones who might like to be reachable in case of emergency, and cell phones are increasingly people's only phone line. The tone should have been, "we're sorry for the inconvenience" and maybe "a future firmware update might resolve this issue to your complete satisfaction", not "you really don't need to use the device like you want to use it".

The reason restarting the device might improve battery life, alluded to in the article, is that there may be errant background processes sucking down resources, and rebooting is the only user-accessible method of shutting them down.

</comment></comment><comment><USER3> I've noticed a separate issue with my new iPhone 4S, where the notification sound for text messages will bug out after a while, and play twice in about a tenth-of-a-second interval, and the only fix I've found is to power the device down and back up.

As for the battery life, I've found it to be typically about the same as the 3GS it replaced. Hopefully, the 5.0.1 update due soon will give me the superior battery life promised in the product announcement.

</comment><comment><USER4> +++Breaking+++ Apple Store geniuses can be clueless idiots, too, and say stupid and insulting stuff +++Breaking+++</comment>


Ask HN: What programming language/framework to use in a side project? - <AUTHOR>

I'm a long time .NET and PHP dev (yes, I hear HN cringing) and have a couple side projects I want to put together. My corporate job is in .NET and my current couple of side projects are in PHP. I don't have tons of free time between my job and family, and anything I want to learn has to be "for profit". Meaning, I want to learn things that will keep me or get me employed (outside the startup/San Fran world).
Do, I just beef up more on .NET to cover things I don't do at work or try to expand into like Python? What about front-end, stick with MVC view templates/jquery or try Angular?
Does it look better on the resume having experience with more or more experience with few? <comment><USER2> Go with something you've never tried before. Not only for the intellectual challenge, but because it will pay off in the long run: make you more versatile, better understanding of different programming paradigms, open new doors to positions at companies that aren't .net/PHP shops.

Python with Django and Angular is a solid option, particularly with the widespread adoption of the language. Ruby on Rails is a popular choice too, but less use in the traditional corporate world (which I guess is your space, given .net).

Some may say functional programming, but less commercial value. Go is a great language too, but haven't played with any mvc framework yet.

</comment><comment><USER3> My suggestion is to go for something you never tried so yes, Python with django could be a good thing if you never used them and for javascript try dropping and going for angular/backbone/ember. For the resume I think it depends on what you want. I like to have a bit of everything so if I want to change field I can. But that means that I am not yet a super expert on anything. I think that if you became truly good at one thing you could ask for a higher salary but you will be stuck with it and might be harder to find a job. But this is just my personal opinion.

</comment><comment><USER4> I'm in a similar boat - for work I mostly use MSSQL/.net. For side projects I have been using Python/Flask which have not only been a blast to use but seem to be very flexible.

</comment><comment><AUTHOR> Thanks to those that made suggestions - it's appreciated to hear other people's opinions. I was hoping to get more, but without front page on HN that doesn't happen.

</comment><comment><USER5> Node.js</comment>


PetitParser: Dynamic Grammars in Dart - <AUTHOR> https://github.com/petitparser/dart-petitparser

<comment><USER2> This parser seems to be great.

I wonder if it has a similar decent parser error reporting like Parboiled [0] for Java/Scala. I never used Parboiled much, because it doesn't (didn't?) work somehow with Groovy. So I had to use an alternative with nearly inexistent error reporting.

There are also more or less complete ports to Java, Smalltalk, TypeScript and PHP.

[0] [https://github.com/sirthias/parboiled/wiki/Features](https://github.com/sirthias/parboiled/wiki/Features)

<comment><USER3> > I never used Parboiled much, because it doesn't work somehow with Groovy

If a parser works with Scala, Java, Smalltalk, Typescript, and PHP, but not with Groovy, then change your language, not the parser!

</comment></comment><comment><USER4> Great. It's incredible how the little but amazing Smalltalk world produces such a great quantity of innovations !</comment>


Recordings of 2.7 M calls to Swedish hospitals leaked - <AUTHOR> https://translate.google.com/translate?sl=sv&tl=en&u=https%3A%2F%2Fcomputersweden.idg.se%2F2.2683%2F1.714787%2Finspelade-samtal-1177-vardguiden-oskyddade-internet <comment><AUTHOR> A pretty decent Google Translate, but the highlights:

\- Recordings of 2.7 million calls going back to 2013 have been publicly accessible on a web server with no authentications

\- The calls are to the national health care hotline 1177, where people call to ask for medical advice and where to seek treatments

\- They include personal information as well as descriptions of symptoms etc.</comment>