How to Pack For 10 Days In a Carry-On - <AUTHOR> http://www.nytimes.com/slideshow/2010/05/06/business/businessspecial/20100506-pack-ss.html?src=me&ref=general <comment><USER2> Pfft...10 days is amateur hour. I just came back from a trip to France where I did nearly a month out of a single carry-on. Part of the strategy is to depend on the amenities of the country you're visiting: most places have laundromats, and so you can get away with carrying a week's worth of socks, underwear and shirts, knowing that you'll be doing laundry every week. Same with stuff like soap, towels, shampoo, etc. You can (usually) find it there.

The heaviest things to pack are shoes, pants, sweaters and coats. Buy the right shoes, and you'll get by with one pair. Likewise for pants: you only really need two pairs, and if you're really intent on traveling light, you can find exceptionally lightweight nylon pants that look dressy enough for most situations, and that don't wrinkle. Sweaters and coats are a little tougher, but if you count your body as a piece of baggage, you can minimize the burden: for this trip, I carried two sweaters and a hoodie, and was pretty much always wearing one of the three items. The other two were in the bag.

The other important thing to do is to make sure that everything coordinates in all possible combinations. The easiest way to do this is to buy everything in shades of black or gray, but you can be more creative, just so long as your pants, shoes, shirts and sweaters are interchangeable. Master this, and you can go for a surprisingly long time off of five days worth of clothing.

For this trip, I had two pairs of pants, five shirts, five changes of underwear and socks, two sweaters, a hoodie, a tiny laptop computer (EeePC's are awesome for travel), my iPod, two books, an extra pair of shoes (I have bad feet), a travel towel, and the usual cohort of tiny shampoo, soap, deodorant, etc. Everything fit into an REI travel backpack that will fit into the smallest overhead bin.

The only other really critical tip that isn't totally obvious is that you _must_ carry a zippable bag for your used clothing, or you'll smell like feet after a few days. You can pick up hand-compressable space-bags at REI for $10. They're awesome -- unzip, stuff your laundry in the bag, rezip, compress, and you're ready to go. Thanks to the compression, I actually had _more_ space in my bag at the end of each week.

</comment><comment><USER3> Wonderful picture set, but by the the fourth slide, Heather Poole has become "Ms. Pools" and in the ninth photo drops to "Ms. Pool." Maybe the NYT needs instructions for how to proofread for 12 captions in a web browser.

</comment><comment><USER4> I love <http://www.onebag.com> the site design may be a bit outdated, but e information is great. I especially recommend reading the bit on packing clothes. I always use his method of "bundle wrapping".

</comment><comment><USER5> _Three bathing suits...three nightgowns_! I can pack for 10 days in a small backpack if I don't need smart clothes.

<comment><USER6> Haha so true. I spend 10 days in costa rica surfing and get by with just bringing a small back pack. Surfboards take up a bit of space tho ;)

</comment></comment><comment><USER7> I never considered _rolling_ clothes instead of folding them. I guess I can imagine how it truly would limit wrinkles if they're rolled tightly enough!

</comment><comment><USER8> My problem is shaving cream in the no liquids-gels-aerosols world. As far as I know you can't get it in a small enough package to be allowed through security.

I realise that theoretically I could buy an electric razor, though they don't work well on my beard. Alternatively I could just buy a new can of shaving cream every time I travel.

<comment><USER9> You want this: <http://www.shave.com/shave/?tab=oil>

<comment><USER8> Hmm, perhaps I'll try something like that. Thanks, random internet person! My beard is pretty severe though.

<comment><USER9> Mine is too - I can grow a beard as long as my hand is wide* in about 6 months. The oil is great if you have a good razor (again I recommend King of Shaves - all their stuff is _so_ much better than Gillette rubbish) and shave every day.

Male grooming discussion on HN, who'da thunk it :-)

*This is the minimum length to join the Taliban, apparently!

</comment></comment></comment></comment><comment><USER10> And this is news? I routinely go on 2-3 week trips with nothing but one carry on and one laptop bag.

<comment><USER11> Consider yourself lucky -- you must live in a nation that doesn't strictly enforce the "one carry-on item" rule (and yes, handbags or laptop bags count as a separate item of luggage, so the whole lot has to go in your carry on before processing through Security).

<comment><USER12> Most airlines I know of allow a carry-on and one personal item (purse, laptop bag, backpack). Where _do_ you live that you can only bring one item with you on the plane?

<comment><USER11> The UK. Where, after the liquid bombing thing, they not only brought in the 3 x 100ml of liquid rule, they insisted that passengers only carry _ONE_ bag through security (because ramping up to actually check each bag properly was taking too long).

This isn't the airlines, it's the government. There is no work-around and it's a rule they've relaxed only at a handful of airports with additional screening equipment. Beware -- if you visit the UK, you may well only be allowed to take a single carry-on item when you fly out again!

<comment><USER9> 1 carry-on + 1 camera bag was OK at LHR, last month at least.

<comment><USER11> LHR is one of the few hubs where they installed extra securiy screening. I live in Edinburgh; EDI is still enforcing the one-bag-only rule, as are the other airports I've flown through in the past year (I avoid the British hubs wherever possible).

</comment></comment></comment></comment></comment></comment><comment><USER13> Grrr... I hate these slide show things. Stupid, artificial attempts at driving up pageviews.

That out of the way, I notice that conspicuously absent are electronics with their bulky chargers or other personal items that pretty much everyone needs to carry with them now.

<comment><USER14> I travel a fair amount for business (although for no longer than five or six days at a time), and this is exactly how I pack - except my bag has a fold-out section that I can put my suit jackets in so that they're only folded once.

Aside from clothing, all that I carry is a book, a laptop and charger, and a few cables (all my other electronics - BlackBerry, iPod, etc. - can either be charged off the USB port of my laptop, or I know that I won't need to recharge them).

Now, if only I could get a nice new bag that fit in the overhead compartment of a CRJ-705...

</comment></comment><comment><USER15> Truly incredible how she's able to get that much into a carry-on.

<comment><USER9> That's still way too much stuff. Maybe this is a girl thing. A man might take one suit in addition to the one he's wearing, and just a fresh shirt and underwear per day, a pair of jeans and a couple of t-shirts. Once you've done it a few times, you realize how much stuff you don't need to carry, the hotel will have it. Or you don't need a wide selection of clothes if you know what you're going to wear. If it's business, suits, if it's a vacation, no-one's going to care if you wear the same board shorts or whatever twice. Or all week, if you're going in the sea every day. Check the weather forecast before you go (and if you get it really wrong, hell, you can just buy something).

<comment><USER16> Exactly.

I don't think I need 3 pairs of shoes even when I'm at home.

<comment><USER17> I don't own 3 pairs of shoes.

I really, really don't get how people can fill up their house with shoes, or have a problem buying too many.

But then, I buy too few seeing as those I wear have a hole in the sole.

<comment><USER16> I actually own more than 3 pairs of shoes, but that has more to do with me failing to throw away the old worn-out ones.

</comment></comment></comment></comment></comment><comment><USER18> The best trick is to constrain the size of your pack/suitcase. If you set a small limit, you don't have room to take things you don't need.

</comment><comment><USER19> Are slideshows like that automatically generated, or does some guy sit down and copy/paste text and images into a template for each one?

<comment><USER7> If you're making that much money/impact due to the greater pageviews, you can afford the 10 minutes it takes to do the copy-and-paste donkey work.

</comment></comment><comment><USER9> I'm always amazed by how bad most people are at packing. I see people going to lie on a beach for a week with a suitcase big enough that they could fit in it themselves. Sometimes two.

When I was a 13 year old Cadet they told us, after every exercise make two piles, stuff you used and stuff you didn't. Aim was for the second pile to be as small as possible. Nothing teaches this as well as everything you pack, you have to carry on your back!

If I'm on a two week business trip, I'd pack for one week and just expense the hotel laundry.

<comment><USER20> > I'm always amazed by how bad most people are at packing.

It is truly extraordinary. I frequently do two week trips overseas (e.g. connecting two conferences with a weekend in the mountains) with a 30 liter backpack (no separate laptop bag). I've also done 4-day technical alpine climbs with a 26 liter pack. And somehow people need 4 times that much for a week in a different city. I blame the wheeled bags, they encourage people to bring more than they can comfortably carry and produce kinematic waves at every transition (stairs, escalators, curbs).

<comment><USER9> Yeah, wheeled luggage is a pet hate of mine. It's compounded by the people who own it usually being inexperienced travelers so they're flailing about at check-in or security on top of that.

I recently did a week dive trip, with all my gear, in a 70L kitbag. The average person coming to that resort just for the beach and the casino seemed to have at least double that!</comment></comment></comment>


Marketplace on PHP-Fusion? - <AUTHOR> Marketplace site to be build on PHP-Fusion? It is about a standard catalog-site, just like this one below, but it should be more static (less moving and backlighted elements). The question is : it is doable in Fusion or no? <comment><AUTHOR> [https://zoptamo.com/uk/s-twerking-c-uk](https://zoptamo.com/uk/s-twerking-c- uk)</comment>


Development Software Handles High-Integrity Space Applications - <AUTHOR> https://www.techbriefs.com/component/content/article/tb/pub/features/application-briefs/37211 <comment><USER2> I was surprised they didn't use SPARK contracts to ensure compile-time safeties.</comment>


Newspapers: Shut up and charge already  - <AUTHOR> http://www.kingkaufman.com/2009/06/06/charge/

<comment><USER2> "hey'll quickly understand the value of their content, which, with rare exceptions like the Wall Street Journal, is something very much like zero"

This is very much untrue, at least in the UK. The quality dailies have had a very strong year and have driven forward the debate on all kinds of things:- parliamentary expenses, the Brown/McBridge spin sleaze, the Iraq inquiry, the News of the World tapping scandal.

Whether we'd have seen anything like this kind of investigation from the BBC's news organisation or online is no sure thing. Possibly in a TV show like Panorama but then you're talking about 50 such shows a year.

Sometimes I feel like a minority of one but when the papers start charging I imagine I'll think its a good use of my income and I'll pick one.

<comment><USER3> Agreed. I can't really speak for any other area, but several of the large Chicago papers (most notably the Tribune) have been key in exposing and fighting government corruption.

While their average content isn't always that great, they are able to supply a level of investigation and fact checking that would be missed if they went out of business.

<comment><USER4> There's no question that newspapers often (sometimes?) do good reporting -- the Chicago Tribune is a great example of this. The real question is, are people willing to pay money for it and is it enough to maintain a business? I (and many others) would argue that the current structure of newspapers is not going to be profitable. When 90% of your content is filler from the AP or Reuters, why should people pay for it? The day of general purpose news organizations (with the exception of a few like AP and Reuters) is fast coming to an end.

</comment></comment></comment><comment><USER5> Pretty much to the point - just do it.

Although Rupert Murdoch's already decided to do this for his arsenal of papers. In Australia it will work for the financial paper The Australian Financial Review, but we'll have to wait and see how it will work out for the rest of the 'normal' papers, including the only national paper in Australia, The Australian.

As for me, I'm going to continue to get my news primarily from the A(ustralian)BC and the BBC, both provided by taxpayer money and providing a public service with little of the advertising baggage that commercial providers come with.

<comment><USER4> I don't know if I'd trust a government-run organization to do any deep investigation of its masters, though.</comment></comment>


Relax, It's Just Ubuntu 15.04. AARGH IT'S FULL OF SYSTEMD - <AUTHOR> http://www.theregister.co.uk/2015/05/05/ubuntu_15_04_review/ <comment><USER3> I've actually gotten to the point where I don't mind systemd itself ("systemctl status" is a sysadmin's wet dream, and the built-in security and resource limit options are seriously wonderful), but what I _do_ have a problem with is how the Linux ecosystem is turning into a monoculture.

IMO, Linux is at its healthiest when its two most popular server distributions, RHEL and Debian, are as different as they can possibly be. I really wish Debian would have gone with OpenRC for that reason.

<comment> vezzy-fnord _built-in security and resource limit options are seriously wonderful_

You could have used these already as separate tools that operate on process state. It's just kernel subsystems and syscalls at the end of the day. util- linux has them.

<comment><USER3> But with systemd, I can just throw an extra key-value pair in the unit file, and _bam_. No messing with wrapper programs, no modifying the service's code and recompiling, etc. It's not that it's not possible without systemd, it's that systemd makes it trivially easy.

<comment> vezzy-fnord It's either throw an extra key-value pair or throw an extra program name in front of the line to start. They're both trivially easy, and the latter has the advantage of being totally agnostic of anything other than the kernel.

</comment></comment></comment></comment><comment> vezzy-fnord _When you boot Linux, the init system loads the drivers you need, turns on your network connection, fires up the necessary system service and then loads the desktop. Without an init system, you have no way to do anything._

Actually I'm pretty sure it's udev that handles module loading these days (which isn't related to the functions of init(8) and process management, even if it's part of systemd now), or alternately one can use the kmod tools manually.

This is a misleading interpretation in general. The init system (though really the process manager) _starts the services_ to enable all these things. The simplest form is just a synchronous tool that exec()s binaries.

<comment><USER3> > This is a misleading interpretation in general. The init system (though > really the process manager) starts the services to enable all these things. > The simplest form is just a synchronous tool that exec()s binaries.

Even in traditional init systems, networking configuration is written into the init scripts themselves. For starting the desktop and udev, sure, the init script just starts a service, typically through start-stop-daemon, but the actual network configuration logic is in the init scripts.

<comment><USER4> > ...networking configuration is written into the init scripts themselves

This statement may technically be true, but it is misleading about what component actually does what.

It depends on where you consider the init system to end and the distribution's networking scripts to begin. On Debian and Ubuntu, the ifupdown package provides traditional networking configuration, and network-manager the "desktop roaming" networking configuration. They integrate with the init system like other services (and arguably a bit tighter) but they are still separate components.

So yes - as you say the networking configuration is written into the init scripts themselves, but the init scripts are provided by the distribution's networking components, not by the init system component.

And indeed the systemd switch in 15.04 - a replacement of init system - <USER2> happened but the networking configuration mechanism (ifupdown) remains. Both before and after the init system _triggers_ the networking to be configured, but the init system is not the component that does the work.

</comment></comment></comment><comment><USER5> I upgraded to 15.04. No real problems. In fact, systemd nicely addressed a few things that were really awkward for me before, and the integration with containers is very nice.

<comment><USER6> I suggest hanging out on AskUbuntu and trying to help people. It's far more informative than a sample of size 1.

There are various visible differences ([http://askubuntu.com/a/613814/43344](http://askubuntu.com/a/613814/43344)), and quite a lot of recurrent problems with outdated instructions from third parties ([http://askubuntu.com/a/617822/43344](http://askubuntu.com/a/617822/43344)), the "official" packages being __behind __the Ubuntu-supplied packages ([http://askubuntu.com/a/617869/43344](http://askubuntu.com/a/617869/43344) [http://askubuntu.com/a/617773/43344](http://askubuntu.com/a/617773/43344)), assumptions of upstart breaking things ([http://askubuntu.com/a/618138/43344](http://askubuntu.com/a/618138/43344) [http://askubuntu.com/a/613785/43344](http://askubuntu.com/a/613785/43344)), interactions with binary drivers ([http://askubuntu.com/a/613773/43344](http://askubuntu.com/a/613773/43344)), plexmediaserver ([http://askubuntu.com/questions/601226/](http://askubuntu.com/questions/601226/) [http://askubuntu.com/questions/600026/](http://askubuntu.com/questions/600026/) [http://askubuntu.com/questions/617575/](http://askubuntu.com/questions/617575/) [http://askubuntu.com/questions/618275/](http://askubuntu.com/questions/618275/)), NetworkManager ([http://askubuntu.com/questions/615006/](http://askubuntu.com/questions/615006/)), and X display manager logon ([http://askubuntu.com/questions/614128/](http://askubuntu.com/questions/614128/) [http://askubuntu.com/questions/614013/](http://askubuntu.com/questions/614013/)).

Then there's the __really popular __ "starting version 219" question ([http://askubuntu.com/questions/618668/](http://askubuntu.com/questions/618668/) [http://askubuntu.com/questions/613776/](http://askubuntu.com/questions/613776/) [http://askubuntu.com/questions/617593/](http://askubuntu.com/questions/617593/) [http://askubuntu.com/questions/616426/](http://askubuntu.com/questions/616426/) [http://askubuntu.com/questions/613627/](http://askubuntu.com/questions/613627/) [http://askubuntu.com/questions/613969/](http://askubuntu.com/questions/613969/)).

<comment><USER5> Do you have a point? Of course there are problems rolling out a new, complicated system.

I've been using Linux since 1993. There is nothing new here, same process has been ongoing for 20+ years.</comment></comment></comment>


BareMetal is a 64-bit OS for x86-64 based computers - <AUTHOR> http://www.returninfinity.com/baremetal.html <comment><USER2> > Return Infinity goes back to the roots of computer programming with pure > Assembly code. As we are programming at the hardware level, we can achieve a > runtime speed that is not possible with higher-level languages like C/C++, > VB, and Java.

When will this reasoning finally die?

<comment><USER3> It won't die because it's true, at least in some cases.

The LuaJIT 2.0 interpreter, written in x86-64 assembly language, is 2-5x the speed of the plain Lua interpreter, written in C. Note that this is with the JIT _disabled_ \-- it is an apples-to-apples comparison of interpreter-vs- interpreter: <http://luajit.org/performance_x86.html>

I recently wrote a protobuf-decoding assembly code generator that is 2-3x the speed of C++ generated code: [http://blog.reverberate.org/2011/04/25/upb- status-and-prelim...](http://blog.reverberate.org/2011/04/25/upb-status-and- preliminary-performance-numbers/)

What is your evidence in support of the idea that assembly cannot be faster?

<comment><USER4> I don't know, I always found the notion that humans will _always_ be able to optimize better than machines to be somewhat... naïve. Is it an NP complete problem our own heuristics are currently better at estimating?

No one has performed controlled studies on these things - maybe they had some crummy bottlenecks, used some language feature that their compiler couldn't optimize away, maybe the benchmarks they use to determine performance are trivial (which is very often the case), etc.

Not to mention that most of an operating system's time, post boot is spent doing... what? Having the scheduler swap processes in and out? If you're running a single program that fits inside ram... it's totally fucking pointless, there's nothing left to optimize.

I have a better question. These guys are clearly smart. What the hell are they still doing in _Atwood, Ontario_?

<comment><USER3> > Is it an NP complete problem our own heuristics are currently better at > estimating?

Some of the important problems are NP-complete (like register allocation). Another problem is that compilers aren't that good at telling fast-paths from slow-paths (and keeping everything in registers for the fast paths). For more info see this message from the author of LuaJIT: <http://article.gmane.org/gmane.comp.lang.lua.general/75426>

<comment><USER5> There's a new formulation of register allocation that's computationally tractable: [http://compilers.cs.ucla.edu/fernando/projects/puzzles/exper...](http://compilers.cs.ucla.edu/fernando/projects/puzzles/experiments/)

</comment></comment></comment></comment></comment><comment><USER6> I'd be very much surprised if there were any significant workloads that would work faster on this thing than on a decently set up Linux or BSD install on the same hardware.

It's not my impression that modern OSs has a habit of getting in the way of pure computation - and when the computation is done, I'd much prefer a solid filesystem/network stack to get the results out of the door.

But as an academic/tinkering/hacking project, it's awesome. If assembly was in my backlog of stuff I want to learn/play with, this would be an obvious thing to get started on.

<comment><USER7> Cray runs a stripped down kernel they call Compute Node Linux. It still has virtual memory, which combined with the frequency of getting poorly mapped physical pages, causes difficult to predict performance. It is just accepted that performance results are not reproducible on the Cray and most modern clusters, especially those with "fat" nodes. For large runs on Jaguar, the standard deviation is often 20% to 30%, so people who are doing scalability studies run the same model several times and plot the best result. It can be worse on clusters like Ranger (4-socket quad-core Opteron nodes, connected by InfiniBand). Of course running the same 100k core job repeatedly to get a stable timing is a waste of resources. The problem is a combination of VM, multi-core interference, daemon noise, and network topology variability between runs.

In contrast, IBM's Blue Gene series runs Compute Node Kernel which is not Linux and uses offset-mapped memory. This obviates the need for a TLB. The rest of the OS is also stripped down compared to Cray's already lean CNL. Performance variability on Blue Gene is usually reliably less than 1%.

I think BareMetal looks rather silly and will probably not be used for anything serious, but ordinary Linux or BSD is a dubious choice for HPC.

</comment></comment><comment><USER8> This has been around for at least two years (if not longer?) see [http://forum.osdev.org/viewtopic.php?f=2&t=20946](http://forum.osdev.org/viewtopic.php?f=2&t=20946) for example.

Considering it is such a "from scratch" kind of project and given the progress so far, it seems to me like it might be more of a "let's see if we can" curiosity type thing rather than a project that an end user might actually want to use for anything practical.

</comment><comment><USER9> Previous discussion: <http://news.ycombinator.com/item?id=1698332>

</comment><comment><USER10> Genuine Question: Can anyone give an example of something useful that has been done with this OS, or is planned for the very near future?

<comment><USER11> you can run Redis on it or any other simple single-threaded server

<comment><USER12> I wonder how hard it would be to port redis and how it performance would compare.

<comment><USER11> I don't have a link, but something similar was done with custom kernels with Redis compiled to run native above Xen - the performance gain was only ~ 13% - so in this case it didn't worth the trouble.

But if you a large HPC cluster, getting 13% more of each compute node definitely worth the trouble.

EDITED: see link in child's post

<comment><USER13> Not EC2, but is this what you are thinking about?… <http://openfoo.org/blog/redis-native-xen.html>

<comment><USER14> That's interesting, though I think my takeaway was that the "performance tax" of the operating system layer is pretty minor, all things considered.

</comment></comment></comment></comment></comment></comment><comment><USER15> <http://www.menuetos.net/>

</comment><comment><USER16> A great idea especially if they try to attack one market at a time.

They should mandate a very small (but popular) set of hardware that will be supported so if you want to use it that's it and then it reduces their support issues (they could even sell pre-installed boxes). Possibly create some drivers for Virtualbox drivers to allow people to dabble with it prior to building their own compatible hardware.

I'd like to see them include much needed secondary features in Intel optimized C with a roadmap for them to be reimplemented in ASM as time permits.

If they could develop/get a static web server with the speed of Nginx (or better) I'm sure this thing would explode in popularity; I'm sure CDN's etc. would see the benefits.

</comment><comment><USER17> The part of this that stands out to me: the OS claims to be open source. But the bootloader is proprietary. Why? Does the source depend on proprietary specifications that have been embedded in parts of it or something? The documentation doesn't obviously preclude writing a replacement, but nor does it seem to be designed to encourage such a thing. On the surface it's not complex enough for this to be a huge task, but I'm suspecting there's at least one strange grinding obstacle in the way…

</comment><comment><USER18> I'd be interested to see some benchmarks of some computationally expensive applications vs. running them on Linux or another OS.

How much gains are you making by optimizing the OS?

</comment><comment><USER19> I understand that this is an experimental project, but it would seem that to target high-performance computing, they should allow Fortran as one of the languages also.

</comment><comment><USER20> The thing that strikes me the most is how the author seems to consider C and C++ to be a single language called "C/C++".

<comment><USER21> C++ is an almost perfect superset of C. (using the term "perfect" in the "superset"-ness of c++, not its design quality.) From this perspective, it is appropriate to lump them together.

<comment><USER20> I see plenty of people who claim they write "C++" but end up writing some mutant "C with classes" C++ is not just "C with addons", it's a different language that happen to share its syntax and part of its standard library. Lumping them together leads to ugly C++ code.

</comment></comment></comment><comment><USER22> Having just seen a billboard ad for <http://www.mokafive.com/baremetal> (enterprisey desktop virtualization), I was briefly expecting a legal dispute, but "BareMetal" isn't actually on their trademark list.

</comment><comment><USER7> If it doesn't support MPI or a functional threading system, then it will never be used for HPC.

<comment><USER23> That's my biggest question: can it support threading? I work on HPC tasks that don't need MPI, but that are I/O bound. This means that it is more efficient to use multiple threads to process data while another is waiting for data to be loaded from the disk. I'm all for getting as close to the bare-metal as possible, but you're right. Without MPI or threading, this doesn't have much of a chance to be adopted.

</comment></comment><comment><USER24> any performance metrics? we can speculate about effectiveness of such a solution but it should be fairly easy to validate by running some common computational tasks this OS was designed to excel at, vs other popular OSs..

</comment><comment><USER25> Why would they use FAT16 for the file system? Seems limiting to me...

<comment><USER26> Because it's really trivial to implement. Other file systems are a lot more complex, especially to write.

<comment><USER27> It's also well supported by boot media like .isos, USB, network, etc.

</comment></comment></comment><comment><USER28> And then an FPGA guy walks in a bar and...

<comment><USER29> There I upvoted you. Perfectly valid comment.

FPGAs can be programmed to give the answer in the time it takes the gates to propagate which is usually damn quick. None of these "cycles" things that CPUs use up.

</comment></comment><comment><USER30> The popularity of virtualization technology and the new trend of selling instances could make operating system development interesting again.

The requirements for an operating system have changed drastically with this new way of thinking about what it means to run an operating system. The requirements can be as low as supporting a single process that can talk tcp and (maybe) to disk. Look at Haskell Network Stack, it provides network support to an application and you don't need an OS proper, just Xen.

I'm very excited to see where highly lightweight OSes end up.

<comment><USER31> It's exokernels all over again.

<comment><USER32> It's ________ all over again. Love these types of comments on HN.

<comment><USER31> Oh, Xen and other baremetal hypervisors are actually very closely related to exokernels. I work with Xen for a living.</comment></comment></comment></comment>


Rust compiler added to Android tree - <AUTHOR> https://android.googlesource.com/toolchain/rustc/ <comment><USER2> Can someone familiar with the Android ecosystem elaborate on what exactly this means? Does it mean you get rustc automatically when you download the Android SDK? Does it imply any particular level of support? How many other languages have this status?

<comment><USER3> This happens a lot on hackernews, and frankly it's really annoying. People post a link to some random thing like this, and it gets upvoted because people don't click on the link, they just are excited about the title. A lot of times, the title doesn't even mean anything. Hackernews != Twitter.

</grumpy> I'm going to get some more coffee.

<comment><USER4> hn is one of the few places on the web with a community that notices changes like these and that can contextualize them just-in-time.

</comment></comment></comment><comment><USER5> Pretty wild how many tools are required to get a hermetic Android build:

[https://android.googlesource.com/toolchain/](https://android.googlesource.com/toolchain/)

edit: this just means that Android developers can now include Rust-language components in Android itself.

<comment><USER6> I don't think these are all necessarily required. At least I would be very very surprised if both avr-libc, mingw, and go were needed.

<comment><USER5> For avr-libc, probably this: [http://tool.oschina.net/uploads/apidocs/android/guide/topics...](http://tool.oschina.net/uploads/apidocs/android/guide/topics/usb/adk.html)

Unsure about mingw/go, but they are likely deps for some Android ecosystem project.

<comment><USER7> Looks like go is mostly used in a graphics package (platform_external_skia):

[https://github.com/search?utf8=%E2%9C%93&q=org%3Aaosp- mirror...](https://github.com/search?utf8=%E2%9C%93&q=org%3Aaosp- mirror+language%3AGo&type=Code&ref=advsearch&l=Go&l=)

</comment></comment></comment></comment><comment><USER8> 1\. A large fraction of Garnet (low level components of Fuchsia) is written in Rust. ([https://fuchsia.googlesource.com/fuchsia/+/refs/heads/master...](https://fuchsia.googlesource.com/fuchsia/+/refs/heads/master/garnet/public/rust/))

2\. Fuchsia seemingly supports Android apps ([https://9to5google.com/2019/01/02/android-runtime-app- suppor...](https://9to5google.com/2019/01/02/android-runtime-app-support- fuchsia/)).

3\. For 1 + 2, Android may need to include and compile a part of Fuchsia for interop.

My guess is that this addition is mostly for supporting Fuchsia, rather than using Rust directly in Android.

</comment><comment><USER9> It's not too farfetched to think that some Rust code might be used in Android itself. Google already uses Rust in ChromeOS to build the Linux VM.

</comment><comment><USER10> Rusty 'Droids: no longer strictly a Star Wars thing.

</comment><comment><USER11> Microsoft is also considering it for some Windows components as 70% of Windows bugs are memory-related:

[https://msrc-blog.microsoft.com/2019/07/16/a-proactive- appro...](https://msrc-blog.microsoft.com/2019/07/16/a-proactive-approach-to- more-secure-code/)

I wonder if Google is adding support, because it's also considering replacing the OpenSSL-forked BoringSSL with the Rustls crypto library:

[https://news.ycombinator.com/item?id=20480277](https://news.ycombinator.com/item?id=20480277)

That would be pretty cool, although I wonder if they shouldn't opt for a Noise Rust library instead:

[https://github.com/mcginty/snow](https://github.com/mcginty/snow)</comment>


Flow: What's the verdict? - <AUTHOR> https://amplitude.engineering/flow-whats-the-verdict-9a458ecde27f <comment><AUTHOR> Hello! Author of the post here. If you have any questions about Flow or our process integrating it into our codebase, I would be happy to answer them here.</comment>


ESO Telescope Observes Exoplanet Where It Rains Iron - <AUTHOR> https://www.eso.org/public/news/eso2005/ <comment><AUTHOR> Using the new ESPRESSO instrument on ESO's VLT in the Chilean Atacama Desert, the astronomers identified for the first time chemical variations on an ultra- hot gas giant planet. They detected a strong signature of iron vapour at the evening border that separates the planet's day side from its night side. "Surprisingly, however, we do not see the iron vapour in the morning," says Ehrenreich. The reason, he says, is that "it is raining iron on the night side of this extreme exoplanet."</comment>


The Fallacy of High Level Languages - <AUTHOR> http://www.netsplit.com/2009/03/26/the-fallacy-of-high-level-languages/

<comment><USER2> I like C, and I love Python. Python programmers already found a good solution to this conflict, rewrite slow code in C, write the rest in Python. And they do this not because they are not macho enough to write it all in C, but because that way they can have all the advantages of fast code and useful abstractions. C is just as useful as Python, just not for the same things.

<comment><USER3> I hear this often, and I'd love for this to be true, but python needs it's GIL to be removed for this to be the case. In particular, doing this with reasonable performance in a multi-threaded app (which is most of them these days), is basically impossible.

At the level of one-shot scripts calling C code, or event driven apps where there is an entirely separate C component running in parallel -- it works for the most part. But with the most well-supported versions of python, you cannot have various python/C mixtures running in parallel without a lot of annoying (inefficient) legwork.

It's not a generally suitable solution, unfortunately.

</comment></comment><comment><USER4> "I've been rich and I've been poor. Rich is better" (originally said by Beatrice Kaufman) might apply here. I have programmed significant systems in assembler, Fortran, RPG, Cobol, C, C++, Smalltalk, Python, and Lisp.

The advantages of higher-level languages are unmistakable. There are stories of pairwise comparisons of each of the sequential pairs in this list. In higher-level languages, I found I was producing solutions at a pace unthinkable in lower-level languages.

</comment><comment><USER5> High-level languages are the single most important breakthrough in the history of software engineering. That's because they enable a _tremendous compression of meaning_.

Languages, both natural and artificial, have two purposes: thinking and communication. Maximizing both of those depends on maximizing clarity while minimizing noise (including extraneous text). HLLs help achieve both. That's why most everybody uses them.</comment>


JQuery overview - <AUTHOR> http://www.derekgathright.com/talks/20090808_pdc_jquery.pdf <comment><USER2> A great example of how great software inspires in more ways than one.

</comment><comment><USER3> This didn't tell me anything I didn't already know, but it was pretty entertaining, will definitely use it as a fast and engaging resource to explain to people I need to bring up to speed on it.</comment>


Django as an Authentication Server - <AUTHOR> I kept facing the same problem with Django projects.  I had a common set of users for multiple projects.  A friend recommended I use AWS Cognito to authenticate users, but it seemed absurd that Django couldn't act as an authentication/authorization server out-of-the-box.  So I rolled out my own solution: https://github.com/pandichef/djangito I'd love to get some feedback on this and/or find contributors to help. Thanks! <comment><USER2> You might want to post it as a 'Show HN'

</comment><comment><USER3> You could have used keycloak for that. The bonus is that you get a ton of extra features for free too.

<comment><USER4> Thanks for mentioning keycloak, I didn't know it existed. I wonder how it stacks up against auth0 or AWS cognito.

<comment><USER5> My team is in the middle of implementing keycloak. Some of the more advanced use cases have been difficult, strictly due to the patchy documentation.</comment></comment></comment>


Heard of Ethiopian Jazz? It helps me focus - <AUTHOR> https://albumdaily.com/album/mulata-astatke-and-black-jesus-experience-to-know <comment><USER2> Mulatu Astatke is a real artist and genius!

He has a jazz house in Addis Ababa, where you can find himself every-night, always available for a chat!

A great man, in perfect good shape: search for " ethiopiques " albums, it will change your life :)</comment>


PAAS Comparison – Dokku vs. Flynn vs. Deis vs. Kubernetes vs. Docker Swarm - <AUTHOR> http://www.jancarloviray.com/blog/paas-comparison-2017-dokku-flynn-deis-kubernetes-docker-swarm/ <comment><USER2> Why is upvoted so much. This just touches the surface. Although, I am not very related to PaaS, I know much more for the three of the methods listed. This even oversimplifies so many things, to the point of getting it wrong.

> WHEN TO CHOOSE DOKKU: for hobby and side projects that do not require high > availability

Surely, not correct. Don't make your decision on this line. It's not made for fault tolerance, but anyone who has doubts regarding which to use is very likely to use a single region of single cloud provider. I think most companies(even large one) do that.

> Big caveat (for Kubernetes): it is very hard to setup

I really don't think he did that. It's really easy for AWS at least. See [https://kubernetes.io/docs/getting-started- guides/aws/](https://kubernetes.io/docs/getting-started-guides/aws/)

> WHEN TO CHOOSE DOCKER SWARM: in my opinion, this has a very strong potential > to be a contender against current solutions mentioned above but as of right > now, it is still evolving.

AFAIK, it has been extensively tested and is being used live. I am not sure, but the amount of presence it has, it's hard to believe that it is just evolving and not to be used.

<comment><USER3> Swarm is used but I have heard many companies migrating from swarm to k8s and openshift. Swarm is just unstable, network connectivity is flaky, not sure how can you run it in prod (maybe you can't?).

As for k8s - would recommend it for anything from hobby projects to large prod deployment. Easy to set up anywhere.

This article is indeed very shallow and clearly author hasn't bothered to do some research.

<comment><USER2> > This article is indeed very shallow and clearly author hasn't bothered to do > some research.

Well, yeah, but the thing concerning here is HN upvoted it to the top. I have nothing against the author.

> As for k8s - would recommend it for anything from hobby projects to large > prod deployment

That's what I am saying. IMO, the reputation that it has to be used only if somewhat wanted to manage very large number of servers is a little misleading. I think Kubernetes can feel very intimidating at the start but it's not that hard.

<comment><USER4> Just today I spun up a single node Kubernetes production cluster. Obviously not its sweet spot, but the ecosystem, flexibility and tooling made it an appropriate choice, given that I already know Kubernetes and that I'll be deploying the same software elsewhere on "real" clusters.

</comment></comment></comment></comment><comment><USER5> So much is wrong here it's hard to know where to begin. First, PaaS is not container orchestration. Second, this is extremely superficial. Third, some things are flat out wrong. For example, Docker Swarm has been depreciated. Swarm's capability is baked into Docker as of 1.12. For a better overview see: [https://insights.hpe.com/articles/the-basics-explaining- kube...](https://insights.hpe.com/articles/the-basics-explaining-kubernetes- mesosphere-and-docker-swarm-1702.html)

</comment><comment><USER6> So, the way I deploy code is to SSH into my server, clone my repo from GitHub, setup the db and start the relevant systemd services. If I need to install updates it's a simple git pull and restart the services. I can use something like ansible for configuration management to reduce the manual SSH part.

For someone like me, what benefit do these PaaS offerings provide?

<comment><USER7> Automated repeatability, automated rollbacks, self-documenting infrastructure and the ability to deploy with a single command or automatically on a successful test build.

That means you can merge to master and know the build will just get released when the tests pass without having to do any of that work. Further, as the needs of your infrastructure or DB develop (you are hoping for growth, right?), your deployment stays automated, you can add more complexity to your setup with little additional workload, and you can hire other developers who can safely ship to production without having to be shown any of your method.

<comment><USER8> The question always seems to be how much extra overhead you incur setting these things up in the first place for a relatively small business or side project. I've been curious about these kinds of automation tools for as long as they've been around, but they always look like more trouble than they're worth for any of the projects and deployment strategies I'm involved with at that smaller end of the scale.

Maybe they work better if you're doing a relatively standard DB + API + front- end kind of setup, which as it happens nothing I work on actually is. Or maybe they just don't really pay for themselves until you're working at a scale where a simple copy/clone step and everyday scripting tools aren't sufficient to run everything routine anyway?

<comment><USER9> I swear by Flynn because it can mount Web Apps, Docker Containers and just anything that runs inside of Docker under Linux.

I often find new sexy stuff on the Hacker News frontpage and just mount it right on my Flynn cluster to fuck with it.

<comment><USER8> I suppose my question would be why a lot of small systems would even need something like Docker. The theoretical benefits certainly would apply to various projects I work on, but the reality is that businesses at this scale often set up a standard system image and deploy it on a static set of real servers. Once that's done, the foundation might not change for months or years at a time.

There are usually two significant exceptions. One is security updates, which are typically monitored and tested/deployed via a separate process anyway. The rest is the day-to-day development work and deploying new assets, which typically needs no more than some sort of copy/clone job from the VCS to get the data to the servers and then running a single script to deploy/activate everything.

If you're working with hundreds of servers or dynamically reconfiguring things all the time in a Cloud environment, obviously the situation may be different. However, for the simpler cases -- and you can get a long way with them if you're just running a normal business and not trying to be the next unicorn -- the whole process already seems reasonably reliable and efficient anyway.

I'm a software guy rather than an operations specialist, as are the people I work with in almost all cases, so I always have some nagging doubt that we just have a total collective blind spot here. But so far, speaking only about the smaller scale and more static deployments I tend to work with, these kinds of tools seem like solutions to problems we don't often have.

<comment><USER9> I'm a software guy too ([https://github.com/WriteCodeEveryday](https://github.com/WriteCodeEveryday)), but I have spent an entire 3 years of my life building prototypes and software for small businesses, that just aren't technically savvy and don't have large IT departments.

Once I deployed / configured my fifth Postgres database with Rails, I decided enough was enough, I needed to move faster in my Operations setup since I'm the "ops guy". If you're in a company that has dedicated capable ops guys, you don't need a platform, but if you don't have those guys, you will need one desperately.

Flynn's decent for my use cases because those very things you say you need done -> "deploying new assets", "copy/clone job from the VCS", and "running a single script to deploy/activate everything" are wicked simple and supported right out of the box securely, so instead of handing over the SSH keys to a developer, I can give them the Flynn key and they don't get access to the underlying infrastructure, just a basic API for doing development tasks.

Additionally, the backup functionality allows me to backup a single app or a full cluster and upgrade our infrastructure as it's running.

If you've never looked into Docker, or Flynn, take this post, set aside a $60 budget for DigitalOcean and try it out, I can't guarantee it will be perfect for you, but it's perfect for me. All hail /u/_lmars and /u/titanous.

<comment><USER8> I've looked into Docker, and various other devops-style tools, in recent years. I guess I just don't see what they usefully achieve _in the context I 'm talking about_.

I mean, for all of the projects I'm thinking of here, we already have full version control of all of our assets. We can deploy an update in about upload time plus a few seconds with a single command, and roll it back with a single command as well. Security updates are typically deployed directly from their own upstream repos, again normally with a single command after any due diligence we feel is necessary. Installing the OS and other foundation packages was more substantial in some cases, but mostly because of the various non-standard things any given project might be using in addition to the routine OS + web + DB stack, and we'd surely have to set that up regardless of whether we were making some sort of master filesystem image to clone directly or some sort of image for use in a container system. And we typically run test infrastructure identical to production in both hardware and software, with deployment to that rather than a live system requiring just a couple of simple changes to configuration.

So given the above, how would introducing an extra layer of infrastructure and a bunch more tools really help us? I'd be happy to look into these things in more detail if someone can tell me what I should be looking for and what problem it solves that we don't even realise we have, but none of the (quite a few) resources I've read/watched about them over the past several years has suggested a compelling advantage for smaller, statically hosted infrastructure. Again, the advantages seem pretty clear for people managing, say, hundreds of systems of various types that are spun up on demand and discarded when no longer useful on some sort of Cloud platform, but eliq's original question and my follow-up relate to a different sort of environment.

<comment><USER9> Flynn's key selling point is easy setup and load-balancing.

You should try it out yourself, and see if it eases some of your pain points.

It also includes rollback of code (right from the UI, and every ENV variable change / worker change is a new release) and continuous deployment options (ensuring your code isn't broken when deploying a new version and deploying while ensuring your service never goes offline)

<comment><USER8> _You should try it out yourself, and see if it eases some of your pain points._

Could you suggest any good places to start, please? I haven't looked at Flynn specifically before, but I did take a look at its website on your recommendation. Unfortunately, the videos and explanatory text I've found so far don't seem to be any better than others I've seen before in this area: plenty of buzzwords, but little real substance or context to help someone understand what the tool offers or how it works. Are there some better sources I could look into?

<comment><USER9> Go through the basics, and then install the flynn-cli and create a cluster.

You may additionally want to purchase a cheap domain ($0.99 special is enough, doesn't need to be fancy).

Docs: [https://flynn.io/docs/basics](https://flynn.io/docs/basics) [https://flynn.io/docs/installation](https://flynn.io/docs/installation)

<comment><USER8> Thanks, but those are exactly the pages I was looking at before and didn't find very helpful.

Some examples of what got in the way for me, as someone totally new to Flynn:

I don't know what a "Flynn cluster" is, but it's obviously a central concept and mentioned almost immediately on both of those pages.

There are lots of impressive-looking commands doing impressive-looking things quickly in the videos, but there's not a single mention of where you're actually running them, where any other systems they are affecting came from, or what they're actually doing for that matter.

In fact, _nothing on those pages tells me what Flynn does_. I spent probably an hour or so exploring their site after we swapped posts the other day, but it was an exercise in frustration and I'm still none the wiser about what its scope or feature set actually is. (For comparison, that's longer than the total time it took me to write all the scripts we use to do the automation for one of those projects I mentioned before!)

Anyway, I don't want to take any more of your time on this, so I'll stop there. Thanks for trying to help, even if it didn't work out in the end.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> Seriously why is this anywhere near the top of the page? It's basically two to three sentences about each and barely scratches the surface of each technology.

</comment><comment><USER11> We used Flynn over the last 12 months (tech agency, lots of fairly small projects) but gave it up in favour of Dokku. Every single one of our nodes eventually died, and we were unable to recover them. They chewed up disk space continuously and eventually ran out of disk and then were not recoverable. Other times they just died and would not restart all the required services. This was not even as part of a cluster; just single nodes. We raised issues and messaged on IRC but nothing happened. We really wanted to like it, but that was our experience. There's a lot of magic going on behind the scenes, which makes it really hard to even start to try and resuscitate a dead node. Sorry Flynn!

We moved to Dokku and are really happy with it. It's not H/A but it's mega simple and it works really well. It's basically just Docker, buildpacks and the networking to wire everything together. The plugins also mean it's more useful than Flynn - if you need something like ElasticSearch you just install the plugin. Ditto LetsEncrypt etc etc.

</comment><comment><USER12> I am personally using Rancher with Docker to deploy my apps. I like the web-ui and 1.6.1 is stable to use in production.

<comment><USER13> Is it? 1.1.x looked nice when I had evaluated it (especially the Web UI), but was a real bugs nest in the long run. Had issues with almost every component. Usually found matching bugs that were already filed and had the workarounds described, but it left the bad aftertaste.

Finally, DNS component had nearly malfunctioned and I've switched to Compose with some WeaveNet and semi-manual (re)scheduling. Lost some useful functionality (and the UI) but at least the switch fixed things and it works. Wanted to use Swarm for fully automated scheduling without a DIY external watchdog system, but its networking is extremely limited at the moment (and I haven't groked how to use it with Weave).

Kubernetes looks nice, but the amount of YAML I'll have to write scares me away. And I'm not sure I trust all that "we do magic" stuff anymore. The more complicated system is, the harder it's to figure out what to do when it starts to fail.

<comment><USER14> There's now [http://ksonnet.heptio.com](http://ksonnet.heptio.com) to make it much easier to get started with k8s and eliminate the need to write YAML

</comment></comment></comment><comment><USER15> Somewhat-related question:

I have a cluster of ~6 machines that I'm using to play with containers and container orchestration tools and so on. I specifically want to be able to

1\. Have a non-cli interface for management, and especially not have to write a bunch of YML files myself, and

2\. Be able to specify exactly which machine in the cluster a specific container ends up on.

Something like Openshift Origin seems to be the way to go, but is there another option worth thinking about?

<comment><USER16> #2 would probably be a combination of "stateful sets" and "label selectors" in kubernetes.

Generally, though, you're fighting the high level idea of these tools by trying to tie to specific hardware.

<comment><USER17> I guess it should've occurred to me to ask why notamy wants that. HA? Hardware-specific differences maybe? Those are the uses I know of.

<comment><USER15> It's an issue of hardware differences + some of the software not being designed to be clustered Kubernetes/etc.-style (and it's not mine so I can't just rewrite it).

<comment><USER17> OK, that makes sense. But why use a platform that abstracts physical layout when you already have a physical layout in mind?

<comment><USER15> This isn't really something that I have experience with, hence asking; my issue is mainly not really knowing the tools available, therefore I'm looking in the wrong place.

<comment><USER17> Gotcha! I hope I was helpful.

Normally in these circumstances I'd recommend BOSH but, off the top of my head, I don't know what kind of affinity can be defined. So it might be another rabbit hole.

</comment></comment></comment></comment></comment></comment></comment><comment><USER18> Docker Swarm is the simplest setup for a fairly sophisticated PAAS. It works of a docker compose file that will carry port binding, network configuration,etc. You just run "docker stack deploy". Adding multiple nodes to a cluster is a one line command.

<comment><USER19> Do you mind sharing more from the standpoint of security? What can a user expect to maintain, do, or setup to be secure (as possible)?

<comment><USER18> docker swarm has TLS overlay network support built in. So it is secure by construction. Docker Secrets is built-in ([https://docs.docker.com/engine/swarm/secrets/](https://docs.docker.com/engine/swarm/secrets/)) and is pretty cool.

Not sure what else are you looking at

<comment><USER19> Thanks. Thats a solid start. :)

</comment></comment></comment></comment><comment><USER20> One of the engineers from my company, Nanobox (a micro-PaaS), compares a few of these tools and others in context of how well they cover the development to production workflow: [https://content.nanobox.io/development-to-production- workflo...](https://content.nanobox.io/development-to-production-workflow- coverage-solution-comparison/)

Tools included on this chart include: \- Heroku \- Kubernetes \- Flynn \- Nanobox \- Openshift \- Dokku \- Rancher \- Convox \- Mesosphere \- Hyper.sh

</comment><comment><USER21> Surprised not to see an ECS shoutout yet. I'm curious what the rap is on that that makes people walk right on past the AWS default option.

I've been really happy with ECS. Tons works out of the box. Last piece for me was figuring out a good way to do cron, but I just figured that out. [http://blog.ratelim.it/blog/cron-jobs-on-amazon-ecs-with- dat...](http://blog.ratelim.it/blog/cron-jobs-on-amazon-ecs-with-datapipeline)

<comment><USER22> Glad you figured it out, but they just announced native scheduled tasks: [http://docs.aws.amazon.com/AmazonECS/latest/developerguide/s...](http://docs.aws.amazon.com/AmazonECS/latest/developerguide/scheduled_tasks.html)

<comment><USER21> Hah! Le sigh. That's hilarious. Thanks for the pointer, can't believe I missed that.

</comment></comment></comment><comment><USER23> Couple additional PaaS that could be on the list as well: cloudfoundry, deus, tsuru, openshift (although that's mostly covered by kubernetes).

</comment><comment><USER24> Flynn looks very interesting nowadays (it's been a while since I last checked it), I specially like the fact that they are trying to handle stateful (databases for instance) environments too. But after reading through the website and the Go code, I'm still a bit lost regarding what kind of guarantees/architecture this implies. Has anyone had any experience deploying database appliances with this?

</comment><comment><USER17> A first note, this is not like-for-like. Dokku, Flynn and Deis fit the PaaS spot more meaningfully. Kubernetes and Swarm are sometimes called "Container as a Service" \-- you still need a bunch of work to select, install and configure features that PaaS users take for granted.

Missing from the list: Cloud Foundry. And OpenShift! Give Red Hat some respect here for making Kubernetes into a platform. And DCOS, which I think got its thunder stolen by Kubernetes.

But I mostly know Cloud Foundry, because it's my day job to keep making it better.

It's the most mature out of all of these, has been soak tested to 250,000 running applications[0], can be deployed to any major IaaS or bare metal, comes with routing, logging, service injection, healing, no-downtime upgrading and I forget what other headlines I usually pick out of the several hundred features it now includes.

The Cloud Foundry Foundation includes Pivotal (my employer), IBM, SAP, Google, DellEMC, VMWare, Cisco, Suse and those are just the fancy tech names.

The reason you don't hear about it is that we and our partners have focused on competing for enterprise sales. It's not how you get publicity on HN, but it does mean that PivotalCF -- our commercial distribution -- has the fastest- growing sales of an opensource-based product _in history_. And sales are _still_ zooming up and to the right.

The nice thing is that we and other partners get very broad, specific feedback from customers who are _already_ at massive scale and who expect utter, non- negotiable reliability. We run a public service ourselves (Pivotal Web Services), SAP have HANA Cloud, IBM runs BlueMix.

We and other Cloud Foundry contributors have had the benefit of that dogfooding and feedback for longer than any other container-based platform in existence. And it turns out, there are so many things that can go wrong. _So_ many. It's crazy.

Lastly, Cloud Foundry teams have massive investments in project automation. This gives us two capabilities: one is that we can roll out complete rebuilds of the whole platform within hours of an upstream CVE patch. Users can then apply these fixes to their platform live, in-place, without any running apps noticing that it has occurred. BOSH[1] will roll out the deployment with canaries, and Diego[2] will relaunch containers as they are reaped during upgrade.

The second capability is that we are confident in making very deep, very aggressive changes if it proves necessary, because we have tests upon tests upon mountains of more tests. And again: nobody notices, except that their platform gets faster or becomes reliable under even more extreme circumstances.

If I sound like an utterly biased fan, it's because I am an utterly biased fan. I've watched this thing evolve up-close for years. It is _amazing_.

We build installable superpowers.

Disclosure: If it's not obvious, I work for Pivotal on Cloud Foundry.

[0] [https://content.pivotal.io/blog/250k-containers-in- productio...](https://content.pivotal.io/blog/250k-containers-in-production-a- real-test-for-the-real-world)

[1] [http://bosh.io/](http://bosh.io/)

[2] [https://github.com/cloudfoundry/diego-design- notes](https://github.com/cloudfoundry/diego-design-notes)

Minor edits for style.

<comment><USER25> Is it still the case that CF requires a ton of overhead to get running? Last I checked there was no easy way to set up CF without:

\- Running on a cloud

\- Spinning up ~8 different servers, each with ~2GB of memory iirc

Kinda a lot of overhead if you're just running a few dev environments like I was.

<comment><USER17> I get this question a lot.

PCFDev[0] if you just want a dev environment to tinker with. You can also tinker with cflocal[1] (unsupported) or BOSH-lite[2] (somewhat-supported) if you're looking to practice ops as well.

A lot of Cloud Foundry teams do integration testing with BOSH-lite on large single VMs, because it essentially presents BOSH with a "VM" interface that spins up nested containers instead.

You can, in theory, deploy however few or however many real VMs, or bare metal servers, as you wish, by editing a BOSH manifest.

By default the cf-deployment[3] manifest uses something like 23 VMs of varying sizes. That's because the default manifest is intended for production use with multi-AZ HA as the minimum level of reliability. If you don't need that, one of the alternatives I noted will get you what you want.

[0] [https://pivotal.io/pcf-dev](https://pivotal.io/pcf-dev)

[1] [https://github.com/sclevine/cflocal](https://github.com/sclevine/cflocal)

[2] [https://github.com/cloudfoundry/bosh- lite](https://github.com/cloudfoundry/bosh-lite)

[3] [https://github.com/cloudfoundry/cf- deployment](https://github.com/cloudfoundry/cf-deployment)

</comment></comment></comment><comment><USER26> Some of those aren't PaaS, but container orchestration frameworks.

If you're reading this list of comparisons out of genuine interest, I would suggest also looking into Nanobox: [https://nanobox.io](https://nanobox.io)

</comment><comment><USER27> help me imagine using flynn in production - these seeem like deal breakers

upgrade flynn requires back up and restore

backups are full backups only no incremental

recommended filesystem is s3 azure or google since

postgres is not reliable

<comment><USER28> >postgres is not reliable

That will require a pretty strong argument.

</comment></comment><comment><USER29> You want to invest into what will win including ones own skills. K8 is the winner, IMO. Writing is already on the wall.</comment>


Todoist for Linux - <AUTHOR> https://github.com/KryDos/todoist-linux <comment><AUTHOR> Hi Everyone.

Due to lack of Todoist client for Linux I've made one for myself with some important global shortcuts. I hope it can be useful for someone.</comment>


President Obama's Fake FCC Comment against his own policy - <AUTHOR> https://www.fcc.gov/ecfs/filing/1051157755251 <comment><USER2> The narrative presented is that the comments against Net Neutrality came from opponents of Net Neutrality.

There is a more subtle consideration though - to undermine the entire conversation, you could seed fake comments and then present the known opponents to be crooks.

Or, perhaps separate those two actions entirely. One actor seeds fake comments knowing that a watchdog will pick up on it, thus undermining the commenting system.

My gut tells me that after what we've been seeing come out of the investigation of the 2016 election, the latter options seems plausible.

Add in to the mix citizens who conflate comments with votes, believing that this is a channel of direct democracy and you begin to see why the whole comment system is flawed.

<comment><USER3> Or the astroturfing was automated, and didn't expect to catch literally barack obama. However yes, I agree a comment system is not equivalent to a democratic forum.

<comment><USER2> I almost hope that B.O. was intentional. That makes it comical. :)

</comment></comment></comment><comment><USER4> As a non-american who hasn't followed the FCC debacle, this blows me away.

A government agency acting blatantly against the interests of its people and allowing such tactics is terrible. I hope for appropriate consequences for all involved parties who acted maliciously.

</comment><comment><USER5> Perhaps a better title would be "Fake FCC comment [...] attributed to Barack Obama"

</comment><comment><USER6> Since this topic has been discussed more than any other recently, and there's no significant new information here, it qualifies as a dupe.</comment>


"Node.js is one of the worst things to happen to the software industry" (2012) - <AUTHOR> http://harmful.cat-v.org/software/node.js <comment><USER2> The main argument is that "of all the ways of doing concurrency, callbacks are by far the worst". I tend to agree.

Now we have async/await, I think there is no problem.

<comment><USER3> But it's funny, isn't it?

Callbacks were advertised as the reason why one should use node. They're a foundation of JS.

Then they got covered up by promises. And now, with async await, we're back full circle towards the style of a more linear programming language such as python.

<comment><USER4> Nobody loved node because of callbacks. Node was the only ecosystem where everything was written with concurrency in mind.

<comment><USER5> > Node was the only ecosystem where everything was written with concurrency in > mind.

Yes, sure, if you ignore all the other programming languages, like Erlang, which is older even than first hacked versions of JavaScript.

<comment><USER6> JS was drafted in a week.

Node is a band aid on top of a tech stack that webdev is stuck with.

Node was done with concurrency in mind, JS wasn't.

Compare apples to apples:

How does Erlang's ecosystem stack up when it comes to concurrency? How does it compare to Node? Do you even care given your prejudices regarding JS?

</comment></comment></comment></comment></comment><comment><USER7> Javascript is the Visual Basic of the 201x's.

Like Visual Basic-- it convinced people who otherwise had no idea what they were doing that they were programmers.

It's fun for the rest of us CS/Math guys to sit back and watch you JS programmers discover things we learned 40 years ago. :-)

<comment><USER8> Yeah because CS/Math professionals have never use VB or JS. I'm quite sure that many Wall Street quants and Fintechs who use VBA in Excel to do their job today will find your statements hilarious.

Some of the worst code that I've ever seen has been written by hard maths people.

> It's fun for the rest of us CS/Math guys to sit back and watch you JS > programmers discover things we learned 40 years ago. :-)

Such as?

<comment><USER7> Concurrency.

But I think you're reading more into what I said than what was meant.

<comment><USER8> I just don't think it's fair to say that "JS programmers are just discovering concurrency".

Libuv, the I/O engine for Node.js is written in C and Node.js itself is a mixture of C, C++ and JavaScript. Plenty of other "JS programmers" including myself have also been programmers of C, C++, .NET and many other environments all of which have well defined concurrency stories. None of these people fit your profile.

> But I think you're reading more into what I said than what was meant.

Sorry, but this comment conveys no useful information to me. Your original statements were quite explicit.

<comment><USER7> I expressed myself poorly. Please accept my apologies.

I did not mean everyone who writes JS is a bad programmer. That's not only a dogmatic statement but demonstrably false.

However, people who shouldn't be programmers have to land somewhere and right now its JS.-- just like VB was back in the day.

It's clear to me at least, that JS has been stretched beyond its abstraction level. It's ripe for replacement, its just that attempts to replace it have been closed solutions, so JS continues.

</comment></comment></comment></comment></comment><comment><USER9> I don't think node.js per se is the worst thing. However, the way it is used, particularly what I believe to be a misguided attempt to do "full stack development" is really terrible. And it is not the first time that we have made this mistake. The whole Java on the client side blew up in our faces. If bosses really understood that client side and server side are two different problems with different mindsets and specializations we would not be in the world of pain that we are

<comment><USER10> _" However, the way it is used, particularly what I believe to be a misguided attempt to do "full stack development" is really terrible."_

I'm not sure what way you believe it is being used?

<comment><USER9> I am referring to the following mental algorithm I see being used by managers and some devs: 1\. My front end guy does JS 2\. My backend guy costs money 3\. Let me remove 2 and get 1 to do both, it is all JS anyway; completely ignoring that the way you build the two is fundamentally different, with different mindsets. Language is just a small part of the equation. The claim that having a single language on FE and BE will save cash is simplistic and misguided. It is like saying since my kitchen utensils are built of stainless steel and aircraft carriers are built of stainless steel, I will get Le Crueset to manufacture my aircraft carriers

</comment></comment></comment><comment><USER11> What morbid nonsense.

I don't think there's a single language or framework that I haven't heard this about.

None of our tools are perfect, but great software has been written with all of them anyway, and lots of people have enjoyed working with those tools along the way.

If you don't like a tool, switch or build a better one. Don't write long borderline-nihilistic blog posts about how everything is terrible and we're all clueless.

<comment><USER12> That's generally true. However, when the creator of a popular language/framework disses it himself, it carries a different kind of weight that can't be easily dispelled by your argument.

<comment><USER13> It doesn't read that Ryan Dahl dissed it. He dissed every language and their role in adding to the complexity of the thing that is called IT these days. And he tried to make the focus about the user of the software: as it should be!

"The only thing that matters in software is the experience of the user."

I agree.

</comment></comment></comment><comment><USER14> "Of all the ways of doing concurrency, callbacks are by far the worst," Why? Working with callbacks on a solo thread has proved to be more performant I/O wise than threads.

"for any other problem anything else will be much better than Node.js, even PHP."

Why?

While it might be true to certain extend (i.e. Node not being the right solution for many cases), this article is just filled with baseless arguments.

<comment><USER15> The consistency of node's standard lib alone is a good reason to use node instead of PHP.

</comment></comment><comment><USER16> I hear the main complaint in Node.JS, and even in Go too, is that the error handling is too verbose, eg you can not wipe all fail cases under the rug, they will litter your code and stare annoyingly at you like "hey, you have not handled me". And the code will fail spectacularly, while I guess some developers rather have silent errors with the motto "what I can not see can not hurt me". It gets unbearable for the CRUD app developers when each SQL line needs to have it's own error handling and you have to think about in what order and _when_ to send the SQL queries, where as in traditional "skin your database" programming framework everything is done synchronously. But now we have async/await and you can just await, await, await, and even "forget" about the catch, or that everything is done asynchronously under the hood.

</comment><comment><USER17> Didn't read that, because title is enough for me. But usually people who hate javascript are those who didn't learn and understand it properly. I mean very basics, like concurrency model and event loop. I saw so many monstrosities in production, like checking for result of some async call, with setTimeout. No wonder, people who wrote that code, hate js.

</comment><comment><USER18> Interesting. An entire website devoted to snark about software. Not very nutritious, but it tastes great going down.

</comment><comment><USER19> Critiques of Node.js like this are usually from people who can't keep a single thread up and running. Can't count the number of otherwise intelligent ppl who have told me "Node.js doesn't work". No. Your code doesn't work. Try again.

</comment><comment><USER15> This article is outdated. Its 2017 and Im happy with my async and await.

</comment><comment><USER20> Currently people love the Node ecosystem not the Node itself. So I don't know why this article till here.

</comment><comment><USER21> The way this was written made me think it was a sarcastic rant. But I guess they're serious...

</comment><comment><USER22> Can you say clickbait?

</comment><comment><USER23> These guys are utterly aggressive even by my standards!

</comment><comment><USER24> "Only a thought-provoking read is a good read."

Thanks for that :)</comment>


Apple Has Just Monetized Pirated Content - <AUTHOR> http://mashable.com/2011/06/06/tunecore-itunes-cloud/

<comment><USER2> While overall mashable is correct the details of the article is bit off. I don't think training is the right word for what is happening. Consumers are only just beginning to see streaming music as a product and it takes time as expected for them to evaluate weather or not it is a a good deal. The article seams to have the idea that if we can just train users to pay for music again then the music industry will be profitable once more.

What Apple is doing is providing a new business model for selling music, this has long been said to be what the recoding industry needs to do to survive. Really Apple isn't even selling music is it selling organized, easy to listen to music. The idea that this will "reset" the music industry is absurd if reset means go back to paying anything close to $20 per album, or having to repurchase you music every decade. The price people are willing to pay for music has been falling for years, this new service puts the price at < 1 cent per song per year. I don't see this trend reversing anytime soon.</comment>


Instagram Growth Hacks - <AUTHOR> http://nitrogram.posterous.com/4-keys-to-explosive-instagram-growth-hacking

<comment><USER2> It's scary someone posted this and in their mind it was useful.

<comment><USER3> What makes you find it so useless? I think it's a pretty decent post.

</comment></comment><comment><USER4> Web marketing destroys everything I love. Ironic that's what I do for a living.

<comment><USER3> What do you mean by "destroying"?

</comment></comment><comment><USER5> I need it for my brands. I could also use a following/followers tools.</comment>


Ask HN: What biographies/memoirs to read in 2018? - <AUTHOR> <comment><USER3> Two works lauded by many that lived up to the hype for me by changing my understanding of science and the modern world are

David Wootton's biography of Galileo: [http://www.watcheroftheskies.org/](http://www.watcheroftheskies.org/)

Janet Browne's biography of Darwin: [https://www.theguardian.com/books/2002/nov/10/biography.high...](https://www.theguardian.com/books/2002/nov/10/biography.highereducation)

</comment><comment><USER4> For one of interest to entrepreneurs that is not immediately obvious is the autobiography of Henry Bessemer [1]. The problems he faced (and solved) getting his inventions used still has value today [2].

1\. [https://archive.org/details/sirhenrybessemer00bessuoft](https://archive.org/details/sirhenrybessemer00bessuoft)

2\. [https://en.wikipedia.org/wiki/Henry_Bessemer](https://en.wikipedia.org/wiki/Henry_Bessemer)

</comment><comment><USER5> This one:

"A Man for All Markets: From Las Vegas to Wall Street, How I Beat the Dealer and the Market" by Edward O. Thorp

[http://www.edwardothorp.com/books/a-man-for-all- markets/](http://www.edwardothorp.com/books/a-man-for-all-markets/)

</comment><comment><USER6> I really liked:

[https://goo.gl/Wb8YoH](https://goo.gl/Wb8YoH) When Breath Becomes Air by Paul Kalanithi - <USER2>

[https://goo.gl/gzGxAo](https://goo.gl/gzGxAo) Dying: A Memoir by Cory Taylor - Goodreads

</comment><comment><USER7> Here are few great ones [http://cherrypick.club/post/QmxvZ1Bvc3QtLS00Ng==](http://cherrypick.club/post/QmxvZ1Bvc3QtLS00Ng==)

</comment><comment><USER8> Shrill by Lindy West and Hunger by Roxane Gay. They are both memoirs by excellent women writers talking about being a woman and about being fat in American society.

</comment><comment><USER9> Biographies I enjoyed in 2017:

"The Peabody Sisters: Three Women Who Ignited American Romanticism"

"Worldly Philosopher The Odyssey of Albert O. Hirschman"

</comment><comment><AUTHOR> 'Shoe Dog' added in my list

</comment><comment><USER10> Autobiography of Benjamin Franklin

</comment><comment><USER11> "Skunk Works" by Ben Rich.

It's showing its age a little bit in places, but seems as pertinent as ever.

</comment><comment><USER12> Leonardo Da Vinci by Walter Isaacson is a gem.</comment>


Ask HN: What would you do if you knew you could not fail? - <AUTHOR> Popular question to ask. I'd start a startup to measure bias in speech/text. <comment><USER2> Probably a startup based around productivity. Many types of productivity - energy, anti-corruption, health, healthier food, or a crutch for the downsides of the brain.

</comment><comment><USER3> Cure cancer? Develop a Mr. Fusion, or an Eppstein drive? Return the CO2 levels in the atmosphere to 1950s levels? Convince the world to switch to no net- global pollution (CO2, mercury, etc.), by 2030? Establish long-term peace in the Middle East through a two-state solution with a viable Palestinian nation.

There are so many things I would do if I knew I couldn't fail.

<comment><AUTHOR> Which one would have the highest impact?

<comment><USER3> I do not know how to evaluate the impact of impossible things.

</comment></comment></comment><comment><USER4> knock the apple out of eves hands and tell her to never think of it again.

</comment><comment><USER5> New computer company with a new OS.</comment>


Hurricane Sandy Causes Google To Cancel Its Android Event - <AUTHOR> http://marketingland.com/hurricane-sandy-causes-google-to-cancel-its-android-event-25134

<comment><USER2> In Google-related hurricane news, I'm rushing to release a small update to pressureNET, my Android-powered barometer network, to display recent pressure tendencies on a map (over time). There are a number of pressureNET users in the expected path of Sandy, and I'm curious if my data can play a role or provide insight during the storm. [https://play.google.com/store/apps/details?id=ca.cumulonimbu...](https://play.google.com/store/apps/details?id=ca.cumulonimbus.barometernetwork)

It's free and open source of course, at <http://cumulonimbus.ca>.

I definitely feel a bit in-over-my-head with regards to meteorology and atmospheric science, so if anyone feels like they want to help out that's always welcome. Email us at firstname.lastname@example.com

<comment><USER3> Downloaded, giving it a try.

The closest stations to me are in Halifax or Sydney none on PEI or in NB.

I tend to watch the barometer I have in my house whenever we get hurricanes or near misses.

If it works I'll let you know if not I'm probably dead.

</comment></comment><comment><USER4> For those more interested in the storm than the Google cancellation, this article has a good explanation of the weather-system side of things: [http://epawablogs.com/the-great-halloween-hybrid-named- sandy...](http://epawablogs.com/the-great-halloween-hybrid-named-sandy-2/)

(I submitted it earlier, <http://news.ycombinator.com/item?id=4706518>, but it died in the purgatory of /newest.)

</comment><comment><USER5> I like how the article refers to a tropical storm as a "huge superstorm". I wonder what they would call a category 5 hurricane.

I also hope this means I get the day off :)

<comment><USER6> The 'superstorm' attribution has more to do with the prediction that it will merge with another weather system.

<comment><USER5> And still have a sustained wind speed of less than a tropical storm.

My prediction is that it will rain a lot, but that's about all.

<comment><USER7> The combined storm system is currently forecast to drop twice as much rain as Irene across a much larger area (recall, if you will, the catastrophic flooding that resulted from that event), raise a 20+ foot storm surge across much of the mid-Atlantic coast during at least two high tide cycles, and produce sustained winds over a 25+ hour period during a time of year when most trees haven't yet fully lost their leaves. There will be millions of people out of power, injuries, and quite possibly deaths (in addition to the ~50 people already dead in the Caribbean).

For anyone reading this, don't listen to an idiot on the internet who doesn't understand weather forecasting (and specifically doesn't understand most damage from storms is done by things other than the maximum wind speed). Read the NWS watches and warnings and listen to your local emergency services.

<comment><USER5> I like how you created a brand new account just to call me an idiot. My post only objected to the term "superstorm", which this is not.

<comment><USER8> I don't think super storm is a bad term to use. We call the most severest of storms hurricanes/cyclones. We don't normally call them "super storms". I think super storm suggests a storm that is stronger than the typical storm you'd expect, but doesn't meet the normal definition of a hurricane. Yes you could potentially call a hurricane a "super storm", but not many people do. You could also call them "extreme storms" or "serious storms". Just calling this thing a "storm" I don't think does it justice, and might lull people into thinking that it's not as bad as it could be.

</comment></comment></comment></comment></comment></comment><comment><USER9> A bit of karma for trying to step on an MS event for the second time in a row.

</comment><comment><USER10> I think this begs the question, "did Apple have something to do with this Hurricane".

<comment><USER11> Can't help it: <http://en.wikipedia.org/wiki/Begging_the_question>

<comment><USER10> Exactly: <http://en.wikipedia.org/wiki/Joke></comment></comment></comment>