Bulma: A CSS framework to consider - <AUTHOR> https://matwrites.com/bulma-css-framework-for-2018/ <comment><USER2> Nice collection of fonts, padding, and colors. But not much more. A Column system and responsiveness are hardly features in a CSS framework, more like a bare requirements. The no extra DOM elements is nice, but does it choke if I do use some extra elements? Can I nest these elements without them blowing up?

I always think its strange frameworks like this make you override SASS variables to customize, and talk about SASS modularity. If you are working with SASS, you likely have the skill set to make something like this yourself, or are already working with a Designer. In fact, I think its a good exercise for any Front End Dev to go through the exercise of creating something like this. Pick a good font set, a color pallet (there are sites for that), and standard padding size (16px, 12px, 8px, 4px works well), and you have all you need.

The article had 0 code examples, and only a vague overview of a novel Tile layout. (Is that just display: grid?) Both links from the article to "Bulma" were download pages. I had to go several steps to get to an example. Nothing sets this apart from the million other CSS frameworks.

<comment><USER3> Unless you need to support old browsers you can do _all_ your columns and responsiveness work in Grid and Flexbox natively. Grid in particular is far better at layout than even the best framework (it has named areas, reflow options, all sorts of _useful_ stuff). You no longer need a framework for any responsive layout. Consequently CSS frameworks _should_ be becoming minimal on the layout stuff.

<comment><USER4> "No longer" as long as browser support is there? Are people polyfilling for grids or what?

<comment><USER3> IE10 and IE11 support Grid, albeit a slightly different syntax to an older spec. CSS Grid is not new. IE support was there _long_ before the other browsers. You don't need to write two entirely separate layouts to use Grid. You don't need a polyfill.

Jen Simmons made a really good video about exactly this topic - [https://www.youtube.com/watch?v=7msERxu7ivg](https://www.youtube.com/watch?v=7msERxu7ivg)

Rachel Andrews' blog post about IE and Grid - [https://www.rachelandrew.co.uk/archives/2016/11/26/should-i-...](https://www.rachelandrew.co.uk/archives/2016/11/26/should- i-try-to-use-the-ie-implementation-of-css-grid-layout/)

Mozilla article about progressive enhancement and Grid - [https://developer.mozilla.org/en- US/docs/Web/CSS/CSS_Grid_La...](https://developer.mozilla.org/en- US/docs/Web/CSS/CSS_Grid_Layout/CSS_Grid_and_Progressive_Enhancement)

<comment><USER5> Since when was IE10 the oldest and least standards compliant browser out there?

<comment><USER3> It isn't, but it is the oldest browser that still has enough market share to be worth supporting (in some limited circumstances). We're not discussing IE5.5 because it has _effectively_ zero users.

<comment><USER5> I assume you know that I wasn't thinking of IE 5.5. Why not just say that you personally don't have to support anything below IE10 and so you didn't bother thinking about them?

<comment><USER3> For 99.99% of websites and apps Grid is ideal for layout. There might be things that still need to work in browsers that are too old to support it, but they're not useful when it comes to discussions about how to build websites.

Some web developers out there are still supporting ActiveX components that no one is willing to replace. I don't think anyone would advocate building a new site using ActiveX though. At some point we have to move forward and adopt new technologies that improve the way things are built. We're at a point in web dev where Grid is ready for mainstream use.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER6> Have used Bulma a bit and definitely easy to get up and running with something practical and aesthetically pleasing.

However for a recent site build [0] we went with Tachyons [1] - for anyone who's not come across it; give it a try!

The immutability of the styles make it so quick to iterate and develop. Despite the start-up cost of learning something new (with a slightly different approach), I'd say it's significantly quicker to get something done with.

[0] [https://www.bestcoffee.guide](https://www.bestcoffee.guide) [1] [http://tachyons.io](http://tachyons.io)

<comment><USER7> I'm torn a bit between Tachyons and Tailwind[1]. The latter shares some of Tachyons ideas, but a bit less terse and with more tooling support.

[1]:[https://tailwindcss.com/](https://tailwindcss.com/)

<comment><USER8> I've played with both, and my vote definitely goes to Tailwind.

Tachyons popularised the concept of functional CSS, but it's very hard to customize (a lot of copy/paste, custom cli tool to recompile), whereas Tailwind has a per-project configuration file for colors, breakpoints, etc. and you can build components out of their CSS primitives (if you use PostCSS).

</comment></comment></comment><comment><USER9> Having used Bulma for a few years now to build everything from product to open source stuff, I highly recommend it!

It's currently in use both at [https://phishfinder.io](https://phishfinder.io) and [https://certstream.calidog.io](https://certstream.calidog.io)

</comment><comment><USER10> I used it for a few side projects, it has got a good "getting-started" guide with a lot of examples...easy to hack stuff together. It's been a while since Bulma was released and it only gets better. I'm glad it's getting maintained and contributors keep making it better and better! Thank you :)

</comment><comment><USER11> I would highly consider moving to CSS grid for new projects. It landed in most major browsers about a year ago[0] and is a joy to use. Having a proper layout system built into the browser removes the need for a lot of the features of these frameworks and it is clearly where the puck is going so you should skate towards it.

[0]: [https://caniuse.com/#feat=css-grid](https://caniuse.com/#feat=css-grid)

<comment><USER12> How do you change or add things to CSS Grid without editing CSS?

</comment></comment><comment><USER13> I love this framework. The author, Jeremy Thomas, has got some serious design skills. I like all the things he's put out, even the pretty old stuff still looks excellent.

[https://cssreference.io/](https://cssreference.io/)

[https://marksheet.io/](https://marksheet.io/)

</comment><comment><USER14> I picked up Bulma for my startup's landing page and account admin (URL in my profile), and as a backend engineer who finds the front end ecosystem overwhelming, Bulma was refreshingly sensible.

Default styling feels a lot like github with a little less information density.

</comment><comment><USER15> Looks nice. The is-two-fifths classes involve more tought than Bootstrap's col-md-3 but then I saw that you can also use is-1 to is-12 which seems way easier than thinking "which one of one third or two fifths is smaller?".

Bulma 0.6.2 is bigger than bootstrap 3.3.7 at 223k vs 146k for bootstrap, considering only the css size since Bulma doesn't have any js or icons.

</comment><comment><USER16> I shared Bulma with my team little under a year ago while Bootstrap 4 was still in development. Bulma doesn't have all the bells and whistles CSS-wise of Bootstrap, and it also doesn't require _jquery_ into the page, it lets us write our own components (which is a pro and con of its own).

</comment><comment><USER17> I'd like to give this a shot but partial IE 10+ support is a non-starter. Bootstrap is imperfect but continues to support IE 10 and 11.

Over 10% of our business users use Internet Explorer, due to NPAPI plugins (Java Applets, ActiveX, etc); it is their default browser within those companies.

</comment><comment><USER18> I see the framework cancer now conquering CSS world as it did with back-end and JS world. The question is do we really need these frameworks?

I want to remind Robert Martin's advice about this issue; "Never buy magic! Before you commit to a framework, make sure you could write it. Do this by actually writing something simple that does the basics that you need. Make sure the magic all goes away. And then look at the framework again. Is it worth it? Can you live without it?"

[http://blog.cleancoder.com/uncle- bob/2015/08/06/LetTheMagicD...](http://blog.cleancoder.com/uncle- bob/2015/08/06/LetTheMagicDie.html)

<comment><USER19> That sounds incredibly anachronistic, like much of what Robert Martin thinks is reasonable.

Computers are layers upon layers upon layers of magic, and while it's obviously beneficial to understand as much as possible, it takes a lifetime to understand it all. Low level programming languages just happen to be the layer he started out at, and obviously preaches that everything above is mostly pointless magic, ease of use and productivity be damned, and everything below is "absurdly simple" (lol).

<comment><USER20> Well no, because the word "magic" has a very specific meaning in this context: it means systemic dependencies, consequences, or action at a distance, that are uncontrolled, and of which you have no or limited or incorrect understanding. Linux for example, has pretty much no such "magic", top to bottom of the stack.

</comment></comment></comment><comment><USER21> I'm currently rewriting one of my projects in Bulma, and it feels amazing. So far my experience with it (~1 week) is better compared to both Bootstrap & Foundation.

</comment><comment><USER22> I use Bulma CSS for starting my projects and it's awesome! Was a Bootstrap guy before but I find Bulma more easy and sexier.

</comment><comment><USER23> I once gave bulma a shot. I liked bulma a lot especially, because it was clean, had good docs, did not require js.

However, I moved to bootstrap.

However my major pain with bulma was styling table elements by defalt, and the styling can't be turned off.

This issue does not happen with bootstrap because bootstrap styles are opt-in.

<comment><USER24> Bulma styles are opt-in as well. Instead of importing just the base file, you could of imported everything except table.sass in elements.

<comment><USER23> And if I want to use the styles on table 1, but not on table 2?

Moreover, that will only work when you are compiling sass, if you are using bulma for quick prototyping, you will use dist files.

</comment></comment></comment><comment><USER25> We have built [https://www.moonlightwork.com](https://www.moonlightwork.com) using Bulma. It's such a simple and pleasurable framework to use. The Buefy project provided Bulma components in Vue.js, which we also use.

</comment><comment><USER26> Just a reminder: Make sure to pause your adblocker on the websites of open source projects you use.

</comment><comment><USER27> There are some problems with bulma, but overall, I think it is a very good choice to build new UIs from scratch. I used it with rails and the form "bulma-ification" process was quick and the result is nice.

Since it is quite new, some parts are still mildly annoying, such as too long classes for certain elements (.has-text-centered should just be .text-center like bootstrap or .is-center). Also, I had some conflicts with a code highlighter because both styled ".number" elements. I would prefer ".is- number". So in general, they have to be more consistent on their class names, tweak some of them and watch out for too simple class names (".number").

</comment><comment><USER28> I have been using it with vuejs, it really cleans up the css and works well will reactive elements. Also nice UI components with [https://buefy.github.io/#/](https://buefy.github.io/#/)

</comment><comment><USER29> 1\. why must there always be a framework?

2\. why do so many people want to build one?

<comment><USER30> I guess it's a learning experience as much as anything else.

But hey, as the XKCD comic says:

[https://xkcd.com/927/](https://xkcd.com/927/)

</comment></comment><comment><USER31> [https://picturepan2.github.io/spectre/](https://picturepan2.github.io/spectre/)

<comment><USER32> I've used Spectre recently on a browser extension with great result. I'm amazed at the amount of feature packed into that little framework.

</comment></comment><comment><USER33> I'm using Bulma on a re-design project now. I've had problems in the past tracking down shifting dependencies using other front end frameworks, so I cloned Bulma from github, avoiding npm, and am using Scout to compile Sass.

It's well documented and lightweight, so far so good.

</comment><comment><USER34> I started using Bulma for my new project but later switched to Spectre.css. I like Spectre better. It's lighter and cleaner.

[https://picturepan2.github.io/spectre/](https://picturepan2.github.io/spectre/)

<comment><USER34> I am switching back to Bulma again

</comment></comment><comment><USER35> Nice. I don't like any of the more popular frameworks for the reasons mentioned. Looks worthy of a shot!

</comment><comment><USER36> I really can't see what this has over Semantic at all - Flex, modular and clean design is just the tip of the iceberg. The only thing is its classes are often pretty verbose and it's almost like learning another language to get it to place nice sometimes.

</comment><comment><USER37> very cool, especially considering that Semantic UI comes in at a whopping >500 kb (without careful optimization) and needs additional tweaking to make it responsive :)

</comment><comment><USER38> If you're using a JS framework that manages the DOM (like React, Vue, or Elm), using a JS-free CSS framework like Bulma is the way to go.

</comment><comment><USER39> I don't know how this made it to the frontpage

<comment><USER40> My guess is: 1) Bootstrap fatigue, 2) enthusiasm for CSS grid

</comment></comment><comment><USER41> I don't mean to sound snarky, but Bulma's landing page looks cluttered and just... ugly.

[https://i.imgur.com/UryNOCR.jpg](https://i.imgur.com/UryNOCR.jpg)

Of course, the presentation of the framework may have no bearing on its quality; this is just my first impression.</comment>


The View from Olympus: A 4GW Impeachment? By William S Lind - <AUTHOR> http://www.martin-van-creveld.com/guest-article-the-view-from-olympus-a-4gw-impeachment/ <comment><USER2> > The military problem is really quite simple, and need involve virtually no > shooting or destruction. You just put the cities under siege and wait for > the starving people to come out. It won't take long.

WTF?!? And then what do you do with all these blue city Democrats? (They must "obviously" be Democrats, right?) Put them in camps? Taunt them? Re-educate them? Final solution them?

All these people talking about civil war (I hear it occasionally at truck stops) remind me of a dog chasing a car. OK, you caught it. Did you "win?" What are you going to do with it? What's your _plan_?</comment>


Salted Passwordless Authentication - <AUTHOR> https://msurdi.github.io/posts/4-salted-passwordless-authentication/ <comment><USER2> Interesting approach, would the code sent to the user be a TOTP ?

Because a 5 digit code holds much less entropy than traditional passwordless tokens, it would be easier to brute force if the validation endpoint is not properly implemented (rate-limiting and deleting the challenge after N failed responses).

<comment><AUTHOR> Yes, I think that's what basically the code is, some kind of a one time password. The fact it is just 5 digits is not something I've paid a lot of attention to be honest, as this is something really easy to change. Probably you could even use letters, symbols, etc... the trade-off is annoying a bit more the end user.

It also expires (see [https://github.com/msurdi/wipku/blob/master/server/core/user...](https://github.com/msurdi/wipku/blob/master/server/core/users.js#L48)) , and the api should probably protected with rate limits, that should mitigate the brute force attacks I think.</comment></comment>


Engineer possibly found MH370 - <AUTHOR> http://foundmh370.com

<comment><USER2> Wow. It's hard to make out, but that definitely _looks_ like a plane.

</comment><comment><AUTHOR> blog is not mine.. just thought it's worth reporting.</comment>


Did Google Ruin Googling? - <AUTHOR> http://www.torontostandard.com/business/did-google-just-ruin-googling/

<comment><USER2> I don't have strong opinions either way on personalization. I have strong opinions on people trying to create an issue where there is none. There are a lot of news outlets and snooty bloggers who like to go around speaking for users. I haven't seem users complain about personalization. I've only seen "news" outlets and trying-real-hard-to-seem-important bloggers complaining and attributing their criticisms to all users. Maybe personalization is something to be concerned about or maybe not. Either way, if you make a good case then you can simply state your reasons without implying that all users agree with you and your point will still stand. When you attribute an opinion to an entire group when only a subset of that group or a minority of that group shares your opinion it only hurts your case even if it's a damn good case.</comment>


It's OK to Feel Ambivalent About Your Children - <AUTHOR> https://www.wsj.com/articles/its-okay-to-feel-ambivalent-about-your-children-11561109407?mod=rsswn <comment><USER2> Wow... I cannot imagine feeling like I didn't want my children around so I could be having more fun, or "children that he feels he likes better".

It's not OK to feel ambivalent about your children. In truth it is about selfish as one can be.

"Among fathers I see, I've noticed they're more irritable, they're down about the fact that child rearing just feels so challenging..."

Wow! Pure selfishness. My 1st wife had to be committed to a psyche ward after losing our 2nd child at birth just 14 months after our first was born. This meant I had to fill her shoes and become a "Mom" too for our daughter. Now that was challenging.

So, no apologies when I say that sounds like the wimpy whining of spoiled children that've never grown up and still don't want to.

</comment><comment><USER3> Let me guess: another stimulating screed from a leftist author who thinks normal are crazy for calling them inhuman?

What is wrong with people? There is NOTHING more fundamentally human than loving your children!

<comment><USER4> Can you please not post ideological rants to HN? Those just lead to even lower-quality comments, and we're trying to go the opposite way here.

[https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)</comment></comment>


Should Computer Scientists Experiment More? (1997) [pdf] - <AUTHOR> https://www.cs.princeton.edu/~jrex/teaching/spring2005/fft/moreexperiments.pdf

<comment><USER2> Finally a headline that defeats Betteridge. I guess maybe re-using the title of an academic paper may be a loophole.

</comment><comment><USER3> Define "computer scientist".

I work in usability, and do experiments all the time.</comment>


How to dump 3000 pounds of confetti on Times Square - <AUTHOR> https://www.nytimes.com/2018/12/28/nyregion/how-to-dump-3000-pounds-of-confetti-on-times-square.html <comment><USER2> "The confetti drop started in 1992, when it was intended to lighten up the tone of the event. "Up until that point, it had just been a drunken brawl," said Treb Heining, who managed the confetti that first year and has been doing it ever since. "It was so seedy.""

I think they are attributing too much to confetti -- how does one minute of dropping paper at the end of the event transform an hours long event to something less seedy? I think the big push to clean up the Times Square area that started around then is the real reason the event became less seedy.

<comment><USER3> It's fitting that the man who's job it is to throw a ton of confetti is immensely self congratulatory.

</comment></comment><comment><USER4> If you have ever thought about waiting in Times Square for midnight I highly recommend against it. It is hard to see from the TV PoV but you are all in small, square roped off areas in the middle of the street. You can't leave for the entire night and you need to get there by around 5pm to even be close to the festivities. We left at around 7pm and got our hotel concierge to find us a nice place to eat. Far preferable. You can kind of see how controlled it is in this photo:

[https://petapixel.com/assets/uploads/2018/01/timessquarenewy...](https://petapixel.com/assets/uploads/2018/01/timessquarenewyearseve2018austinpazflynyon-5.jpg)

<comment><USER5> This may come as a surprise to you, but some people actually _like_ the kind of experience you've described.

Probably difficult to imagine why, especially for people who don't expect this from crowded city events.

Some people _like_ it like that.

<comment><USER4> I kind of wished it was more crowded. Instead people were in what were basically cages and the police / organizers were walking around in the empty space between them. Makes sense from a safety perspective but isn't like typical crowded places. The pens weren't even completely filled...

</comment></comment></comment><comment><USER6> opened the article expecting to read a wide array of tech and coordinated pyrotechnic systems used to disperse the confetti, but at the end of the day, good old human power and simple coordination does the trick. always amazed at how simple systems & processes can be magical.

<comment><USER7> Geeez, spoiler alert :)

</comment></comment><comment><USER8> Welp. Pretty much as dumb as the Cleveland Balloon event[0]. I think it is funny as hell, but incredibly dumb, yes. "Cleveland, WE DID IT! YEEEAH".

[0] [https://youtu.be/n0CT8zrw6lw](https://youtu.be/n0CT8zrw6lw)

<comment><USER9> Oh, I didn't get the connection, but the same guy made/planned the balloons for that event:

[https://gizmodo.com/ask-the-project-manager-for- cleveland-s-...](https://gizmodo.com/ask-the-project-manager-for-cleveland-s- crazy-balloonf-1566255102)

</comment></comment><comment><USER10> /gif but why?

I understand how this entertains people momentarily but I still don't understand why people are choosing to waste this much in general...

<comment><USER11> What are they wasting? Per the article, this is material that was already destined for the trash.

And now a million people get to enjoy it as an enhancement to their evening.

<comment><USER12> Right, but at the cost of throwing waste on the ground. I'm not arguing that it is harmful (i'd imagine it biodegrades pretty easily) but it seems flippant to me to assume zero impact.

<comment><USER13> Why do we enjoy fireworks? Party poppers? Potato canons? Streamers? Tinsel on Christmas trees?

It's fun and pretty, and sanitation apparently has no problems cleaning it all up afterwards.

<comment><USER12> This would come off as meaningful if you didn't dismiss the environmental impact without even acknowledging its existence. I am not against celebrations like these _so long as you can acknowledge their impact_.... sanitation workers are not responsible for our actions, regardless of how content they are to clean the visible impacts from the streets.

</comment></comment></comment></comment></comment><comment><USER14> > the hard-core among them wearing diapers so as not to lose their spots

Humans are strange.

<comment><USER15> What I've heard from friends is that diapers are close to necessary because of how packed it is and due to being effectively locked in for safety

</comment></comment><comment><USER16> quite simple really.

1\. dump a large pile of confetti in Times Square.

2\. Argue the second law of thermodynamics until the ball drops.

3\. Watch as the American Journal of Physics grudgingly publishes your paper with a long-winded preface on just how aggravating your approach made parking that year.

4\. Win a sanitation award.

5\. Spend the rest of your days running from the reanimated corpse of Max Planck.

</comment><comment><USER17> [https://outline.com/HgZwLt](https://outline.com/HgZwLt)

</comment><comment><USER18> Any chance of a non-paywalled version? Not sure why paywalled links keep popping up on HN.

<comment><USER19> Open in an incognito window and you're golden.

</comment></comment><comment><USER20> For the rest of the world using the metric system: that's 1361 kilo.

<comment><USER21> Off topic: Can't we all, just get along and adopt the metric system? It's so weird, a bushel, used for grains etc., doesn't weigh the same [https://en.wikipedia.org/wiki/Bushel#Weight](https://en.wikipedia.org/wiki/Bushel#Weight) . Use the metric system and be done with it. Or even the pound /lbs but get rid of cups, pints, teaspoons etc

<comment><USER22> as a programmer, I would love it even more if everyone adopted the same date format. Makes date parsing a lot easier.

<comment><USER23> Specifically, the ISO one (YYYY/MM/DD)

</comment></comment></comment></comment><comment><USER24> Is it biodegradable?

<comment><USER25> > The confetti thrown at midnight is made from recycled material that would > otherwise be discarded, and all of it is biodegradable.

<comment><USER26> Biodegradable on what time frame? Isn't everything biodegradable given enough time? Is there an official definition on what time frame of biodegradability allows something to be legally declared 'biodegradable'? (Looking into this now, fascinating!)

If there's no reasonable legal definition of biodegradable, then isn't that label useless?

<comment><USER13> throw a piece of paper in a mulch bin with some worms and a carrot, it'll be gone in less than a month

<comment><USER27> How many worms and carrots are trapsing around the streets of manhattan?

</comment></comment></comment></comment></comment><comment><USER28> And 30,000 pounds of other nondegradable plastic garbage.

<comment><USER29> The articles says that the confetti is biodegradable

<comment><USER30> The article also says 3000 pounds of confetti.

The article makes no mention of the other garbage the accumulates as a bypoduct of this event, much of which is not biodegradable.

What is the point of dumping this garbage in the street?

<comment><USER31> To keep the cleaners busy, so they have a job and can feed their families. Isn't that a good enough point?

<comment><USER32> Better idea: pay the cleaners anyway and let them stay home without littering in public.

Alternative: do not pay the cleaners if they can't do enough useful work (without artificially increasing it for no gain) - their wage comes from the taxpayers after all (I presume) who pay them in order to get a specific work done, not for charity.

<comment><USER33> > Better idea: pay the cleaners anyway and let them stay home without > littering in public.

There are about 200 unemployed New York subway construction workers who would love a job where they get paid to do nothing.

[https://www.nytimes.com/2017/12/28/nyregion/new-york- subway-...](https://www.nytimes.com/2017/12/28/nyregion/new-york-subway- construction-costs.html)

 __ _An accountant discovered the discrepancy while reviewing the budget for new train platforms under Grand Central Terminal in Manhattan.

The budget showed that 900 workers were being paid to dig caverns for the platforms as part of a 3.5-mile tunnel connecting the historic station to the Long Island Rail Road. But the accountant could only identify about 700 jobs that needed to be done, according to three project supervisors. Officials could not find any reason for the other 200 people to be there.

"Nobody knew what those people were doing, if they were doing anything," said Michael Horodniceanu, who was then the head of construction at the Metropolitan Transportation Authority, which runs transit in New York. The workers were laid off, Mr. Horodniceanu said, but no one figured out how long they had been employed. "All we knew is they were each being paid about $1,000 every day."_ __

<comment><USER34> Wow, a thousand a day? Is that full wages, or does it include benefits? Even if it did include benefits, $1,000/day all-in is not exactly chump change. Universal income would not pay them $1,000/day.

<comment><USER35> That should be full costs, probably paid to a subcontracting company.

<comment><USER36> Are you implying that it wasn't going to a worker, that it was just fraud?

<comment><USER35> I'm implying that workers are often employed temporarily though a subcontracting agency, rather than being in a permanent role. The daily costs is fully inclusive.

Both companies should keep track of what resources are assigned where and paid for.

<comment><USER34> Which makes sense, but if true, quote in OP article would be vastly inaccurate and changes everything.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> > January 1: Applications go out for next year's Confetti Crew. (Mr. Heining > calls the volunteers "dispersal engineers.") Though he says that 50 people > would be enough, he enlists twice that number in order to give more people > the opportunity.

With free and unvalued labour.

<comment><USER26> Wow, that guy is really something. Turn dumping trash in public into profit, get others to volunteer to do the work, charging the people the entire time, for both the dispersal and the cleanup, all the while claiming his trash dumping is a powerful deterrent to crime. Master scammer.</comment></comment>


When monospace fonts aren't: The Unicode character width nightmare - <AUTHOR> http://denisbider.blogspot.com/2015/09/when-monospace-fonts-arent-unicode.html <comment><USER2> I recently changed how JOE dealt with this. Originally it used Markus Kuhn's wcwidth function ([http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c](http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c)), but I've changed it to use the data in EastAsianWidth.txt: [http://sourceforge.net/p/joe- editor/mercurial/ci/default/tre...](http://sourceforge.net/p/joe- editor/mercurial/ci/default/tree/joe/unicode.c#l510)

JOE uses 4-level radix trees for character classes. These work well because the leaf nodes are highly redundant and can be merged together. The resulting structure is often smaller than a binary tree. Character classes are also used for regular expressions, so there is code to build them on the fly from a list of ranges (it's tricky to do this efficiently).

Anyway, I'm surprised that emoji are not double-wide characters.

JOE is still missing Unicode normalization for string searches.

</comment><comment><USER3> In most languages there's not really much need to display source code in monospace, except to the extent that a previous programmer formatted code with that assumption.

When you're trying to align lines of a block, you only need that a string of _n_ initial spaces (or tabs) is the same width every time: you don't care if it is the same as a string of _n_ arbitrary characters. This suffices for the compiler-enforced indentation rule in Python (though not, I think, for the indentation rule in Haskell).

(I code in a variable-width font in Emacs and I work on shared codebases. The codebase style does have a couple alignment rules that don't make sense for variable-width fonts, but I just let Emacs enforce them and I'm happy that overall the code as I see it is easier on the eyes than it would be with fixed-width formatting.)

<comment><USER4> The other main case where monospace (as such) is important is when multi-line expressions should be lined up in some semantically relevant way, e.g. to reflect boolean and/or grouping, or to line up function arguments. (This is especially true in Lisp/Scheme indent styles, but I use it fairly frequently in the C-style-syntax languages as well.)

Separately from the "lining things up" argument, though, there's an argument to be made for characters in _any_ editing situation to be _wider_ , even if they're not all the same width. For naturally-narrow letters like I and l, and for periods and commas, and of course spaces, the non-monospace fonts often make them so narrow that they become harder to target with a mouse, harder to distinguish from each other, and in some cases hard to even see at a glance whether the insertion point is to their left or right. This is a UI problem with _a lot_ of editors (e.g. text entry for data or comments on the web) that doesn't get enough attention; if the content and presentation can be separate (i.e. it's not a WYSI-more-or-less-WYG editor) then the editor should use a font that doesn't have super-narrow _anything_. Monospace is a convenient way to achieve that.

<comment><USER5> You don't need a monospaced font to line up multiline expressions or function arguments. All you have to do is use _indentation_ instead of _column alignment_. In other words, follow the same rules for expressions that you most likely already use for statements.

For example, instead of this:

      someObject.someMethod(oneArgument,
                            anotherArgument,
                            oneMoreArgumentForTheRoad);

Format it exactly as you would if the parentheses were curly braces:

      someObject.someMethod(
          oneArgument,
          anotherArgument,
          oneMoreArgumentForTheRoad
      );

Or instead of this:

      string someVariable = oneThing +
                            anotherThing +
                            yetAnotherThing;

Do this:

      string someVariable =
          oneThing +
          anotherThing +
          yetAnotherThing;

The code is just as readable this way, and you gain many benefits:

* Your code looks exactly the same in a proportional or monospaced font, so people viewing the code are free to choose either.

* You no longer need to fiddle with adding or removing spaces when you change the length of one of your variables or function names.

* The diffs in your revision history no longer show spurious changes that result from that column fiddling.

* Your code lines become much shorter.

* Instead of having one formatting rule for curly braces and a completely different rule for parentheses, you use the same formatting rule for everything.

* It doesn't matter if the code is indented with spaces or tabs. With no column alignment, rules like "tabs for indentation, spaces for alignment" are no longer needed.

* If you need to change the code to a new indentation style (e.g. change 2 or 4 spaces to tabs, or vice versa), you can do that reliably with a simple regex search and replace, with no damage to the code formatting and no manual cleanup required.

I adopted this practice long before I switched to coding in proportional fonts - and once I started formatting code this way I realized that it didn't matter any more what kind of font I used. I was free to choose any font that pleased my eyes, with no impact on the readability of the code for those who prefer monospaced fonts.

A good place to see the problems that column alignment causes is the Servo source code, whose coding standard mandates column alignment. I posted a few examples here:

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

I've often wondered why column alignment is so popular given its drawbacks. I have a theory that I think explains some of it, at least in the case of function calls and parenthesized expressions.

It's because of the very common objection to putting spaces inside the parentheses. For example, PEP8 and many coding standards explicitly forbid this.

Here's what happens. Take my first example above, written as one line without spaces inside the parentheses:

      someObject.someMethod(oneArgument, anotherArgument, oneMoreArgumentForTheRoad);

That line is too long, so let's fix it. The natural starting place is to change every space to a newline:

      someObject.someMethod(oneArgument,
      anotherArgument,
      oneMoreArgumentForTheRoad);

That's a bit messed up, so what can we do? Indent the extra lines?

      someObject.someMethod(oneArgument,
          anotherArgument,
          oneMoreArgumentForTheRoad);

Ugh. Now the arguments don't line up at all. It's really ugly. The only cure is to align the columns:

      someObject.someMethod(oneArgument,
                            anotherArgument,
                            oneMoreArgumentForTheRoad);

But what if we adopted the practice of putting spaces inside the parentheses?

      someObject.someMethod( oneArgument, anotherArgument, oneMoreArgumentForTheRoad );

If we make the same substitution, changing each space to a newline, we get this:

      someObject.someMethod(
      oneArgument,
      anotherArgument,
      oneMoreArgumentForTheRoad
      );

And now it makes perfect sense to indent the arguments:

      someObject.someMethod(
          oneArgument,
          anotherArgument,
          oneMoreArgumentForTheRoad
      );

This is the same thing we intuitively do with curly braces. After all, hardly anybody codes like this:

      while(true) {oneStatement;
                   anotherStatement;
                   oneMoreStatement;}

I think one reason is that we pretty much tend to put spaces inside the curly braces, even in a one-liner. It's not too common to write this:

      while(true) {oneStatement; anotherStatement; oneMoreStatement;}

Instead, this seems more typical (if you use a one-liner at all, which I'm not arguing for or against):

      while(true) { oneStatement; anotherStatement; oneMoreStatement; }

No one seems to mind spaces inside the braces, but I've had developers totally freak out over the idea of putting spaces inside the parentheses. It Simply Is Not Done.

I don't understand why there's such an objection to that, especially when it seems to lead directly to the difficulties of column alignment.

I tend to think that it's because spaces never go inside the parentheses in English text. But this is code, not English, and we are free to choose conventions that benefit us, even if they differ from how we'd write prose.

Edit: I added a number of thoughts after first posting this. If you upvoted this an earlier version of this comment and now think I'm insane for advocating spaces inside the parentheses, let me know and I'll post another comment that you can downvote. ;-)

<comment><USER6> I believe what the comment you're replying to is implying multiple instances of indentation on the same line. Such as:

        if		( $test[0] )	func1()
        elseif	( $test[1] )	func2()
        elseif	( $test[2] )	func3()

<comment><USER5> That's a good point. Well, it was just an excuse for me to go off on a tangent! :-)

For the example you posted, I would classify that as column alignment rather than indentation. Just to clarify my terminology, what I call indentation is something that happens at the beginning of a line only. Any additional spacing after the first nonblank character is column alignment.

So the spaces before the if and elseif are indentation, and the extra spaces within the lines are column alignment (in my nomenclature).

The column alignment in your example is pretty appealing, but it does have some of the same problems as other forms of column alignment. When we get to ten or eleven tests, things have to get juggled around again. Do you do this:

        if		( $test[0] )	func1()
        elseif	( $test[1] )	func2()
        ...
        elseif	( $test[10] )	func3()

or this?

        if		( $test[0]  )	func1()
        elseif	( $test[1]  )	func2()
        ...
        elseif	( $test[10] )	func3()

or go all-out with something like this?

        if		( $test[ 0] )	func1()
        elseif	( $test[ 1] )	func2()
        ...
        elseif	( $test[10] )	func3()

I think basically I am just lazy and found all of this alignment so tedious that I looked for ways to avoid it. :-)

</comment></comment></comment></comment></comment><comment><USER7> A project I work on, "ftfy", deals with various Unicode issues. On the master branch, it's recently gained a module for aligning monospaced Unicode in a terminal:

[https://github.com/LuminosoInsight/python- ftfy/blob/master/f...](https://github.com/LuminosoInsight/python- ftfy/blob/master/ftfy/formatting.py)

The result works pretty well in my gnome-terminal and Mac OS Terminal. You can probably see that GitHub in your web browser doesn't even come close to lining them up, though.

And the problem can't be completely solved, because the standards have gaps, and there are some scripts where monospacing just isn't a thing.

</comment><comment><USER8> This stuff is a nightmare if you're trying to write a nice-looking terminal application. AFAICT there is no reliable way to determine how many cells an arbitrary Unicode glyph will occupy when output to a terminal. None. You can use various wcwidth() functions as a first approximation, but you have to give up on things working in the general case, because there's no guarantee (in theory or in practice) that the terminal's font will actually honor the width defined by the standards. Hopefully this situation will slowly improve with the years, but given the level of neglect the terminal environment gets from standardization processes these days, I'm not entirely optimistic.

<comment> mark-r You could always place each glyph individually, but that's likely to have subtle bugs too, while not being very performant.

<comment><USER8> I have used such a solution at times. But then you usually have the problem of overwriting half of a wide character, which is worse.

<comment><USER9> There is a method, using the report cursor position query to determine the current location of the cursor, you can then print question characters and re- read the loctation, the difference determining how many cells a character forwards the carriage.

</comment></comment></comment></comment><comment><USER9> If anybody here has serious expertise on this subject, please consider reviewing my python implementation of Markus Kuhn's wcwidth, updated for the latest Unicode Specification (programmatically by "python setup.py update").

[https://github.com/jquast/wcwidth](https://github.com/jquast/wcwidth)

</comment><comment><USER10> Relatedly, on GNU/Linux, depending on your locale, fontconfig configuration and characters in the strings displayed (no, I'm not making that up), your monospace font might end up not being a monospace font at all. Look at this nice ghex screenshot: [http://i.imgur.com/z0Dp60H.png](http://i.imgur.com/z0Dp60H.png)

</comment><comment><USER11> Related, it always annoyed me in programming books when program listings using monospaced fonts used an "fi" ligature crammed into one character width.

<comment><USER12> Wow, that is an atrocity i have luckily never stumbled into—do you have examples?

<comment><USER13> Don't quote me on this but I think there may have been an example of this in the most recent Stroustrup C++ book?

</comment></comment></comment><comment><USER14> There is no way to standardize this. Just because legacy encodings provided for single cell and double width characters doesn't mean that all monospace fonts should have to conform to that scheme to support Asian characters. It is up to the font designer to decide how much advance to use and some fonts are designed with Latin characters the same width as the Chinese.

<comment><USER15> Many Chinese characters are completely unreadable at small sizes if you try to fit them in the width of a halfwidth character. It's just not practical.

<comment><USER16> The monospace font designer could integrate CJK logographs as double the standard width (that's essentially what CJK fonts do in reverse with halfwidth latin characters). CJK is monospace to start with though, I'd think cursive & highly ligatured scripts like arabic or brahmic scripts would be a bigger issue when designing monospace fonts (if you want something which doesn't look like utter shite) (though I guess Kufic — the very blocky arabic script found on the flags of iraq and iran — might be better source material than the more modern and cursive Naskh variations, it's commonly manipulated into tilings and brickwords already: [https://en.wikipedia.org/wiki/Kufic#/media/File:Alijlas_kufi...](https://en.wikipedia.org/wiki/Kufic#/media/File:Alijlas_kufi.png))

</comment></comment></comment><comment><USER17> This seems more like a problem with GDI and/or DirectWrite(as well as how each browser is making use of them), less to do with chrome vs. firefox vs. IE vs. VS.

Chrome on Chrome OS (using FreeType 2) properly aligns the text in that <pre>, as does firefox on GNU/Linux (also using FreeType 2, in addition to graphite). On FreeType with Chrome or Graphite, the full-width latin characters are also rendered with the correct weight and face. Something that Chrome and IE on Windows seem to get wrong in your screenshots.

</comment><comment><USER18> Isn't the best general answer to assume mono is mono and put the font configuration responsibility on the user?

</comment><comment><USER19> Seems to work fine in OS X Terminal.

<comment><USER20> But not in Safari, TextEdit, Xcode or BBEdit. Seems like the Terminal has special monospace handling

</comment></comment><comment><USER21> gotta love how things catch up faster than you can complain about.

the rendered text for me on firefox (actually, not even proper firefox, but iceweasel, on debian stable, which is almost a year behind firefox) align perfectly fine. but the picture labeled "firefox" is all out of whack.

</comment><comment><USER22> I was originally a history major, who had a hell of a professor that taught the history of pre-modern imperial China, so I ended up focusing in that area. One thing that baffled me was that characters never really fell out of usage in favor of a syllabary or alphabet the way similar ideographic systems have tended to elsewhere. Other countries in the Chinese cultural sphere, that originally imported Chinese script, developed alpha/syllabic replacements, like the Korean hangul and Japan's two kana systems. And it is not as though China was not exposed to alphabets - Buddhism, Tibet, and the various Turkic, Mongol and Manchurian tribes that bordered on (and not infrequently ruled over significant portions of China), all used variations and descendants of Semetic alphabets. It seemed like such a huge inefficiency and barrier to wide-spread literacy, to have to memorize at least a thousand or more characters, compared to 26-odd letters, 10 digits, and the 50 or so more common phonetic spelling rules, that could get you to an equivalent level of literacy in a Latin-based language. Once you've learned all the characters, and digested all the Confucian classics that make up the shared context of classic Chinese, you can be wonderfully succinct and expressive, but the learning curve to get there can be measured in decades, judging by accounts of prospective scholar- officials studying for the civil service examinations.

It's perhaps the difference between becoming a proficient Vim or Emacs user, and popping open Notepad.

To get back to Unicode, most of the hairiness could have been avoided if Chinese (and related regional variations) used a syllabic or alphabetic script - 100-200 characters vs ~80000 would make 2-byte wide chars sufficient to express nearly every non-dead script, with plenty of space for any number of poo or banana emoticons (if such a thing is really necessary, about which I have my doubts).

</comment><comment><USER23> That reminds me of how I wanted to start a project with a name containing the German 'ö' character. Of course, as customary, I save my projects into folders with the name of the project. And, also of course, GCC issues instantly ensued when I tried to compile the C++ source of that project. What did I learn? Stay with ASCII for your code and names. It might be 2015 but apparently it's more important to put poop into unicode than to actually implement the thing in all the important software.

<comment><USER24> Have you tried this lately? On a Debian Jessie machine using the en_US.UTF-8 locale, I encountered no problems doing this, though I picked œ instead of ö. I did have a little bit of pain from git (git status showed \305\223 for œ) until I did "git config core.quotepath false".

Not sure how this'll come through on ycombinator, so it's also on a pastebin for 24 hours: [https://paste.debian.net/311370/](https://paste.debian.net/311370/)

~$ cd src

~/src$ mkdir œuvre

~/src$ cd œuvre

~/src/œuvre$ printf '#include <stdio.h>\nint main() {puts("hello œuvre");}\n' > œuvre.c

~/src/œuvre$ g++ œuvre.c -o œuvre

~/src/œuvre$ ./œuvre

hello œuvre

<comment><USER25> That's a bit different. Presumably you're running this in a terminal emulator. Terminal emulators (and programmers editors), if they're set to a monospace font, operate on a grid. For characters in the selected monospace font this is just like normal font rendering, but when fallback fonts are used, it still uses the layout from the original monospace font (i.e. the grid) instead of the layout from the fallback font. This means that the fallback font rendering doesn't screw with the columns.

Naturally there's still the issue of properly identifying double-wide characters. But as long as you can correctly identify them (and for the ambiguous characters it generally treats them all the same, either as narrow or as wide depending on the software in question), you can simply render them with 2 cells instead of 1, and everything remains lined up.

But the article here was showing monospaced text in a web browser, and a web browser doesn't do any of this (nor a rich text editor). Font fallback usually attempts to maintain properties like monospacing, but the fallback font may still have different metrics, meaning it won't line up with the monospaced text from the source font (and depending on the fonts available, if you have no monospaced font with asian glyphs it would have to fall back to a non- monospaced font).

I suspect what's going on with the locale stuff here is simply that the locale affects the fallback list, and it ends up picking a different font that happens to have the right metrics to line up. But I can't say for certain that this is the explanation.</comment></comment></comment>


A React and Preact Progressive Web App Performance Case Study: Treebo - <AUTHOR> https://medium.com/dev-channel/treebo-a-react-and-preact-progressive-web-app-performance-case-study-5e4f450d5299 <comment><AUTHOR> This article gets right to the point and covers a number of ways to analyze front end web application performance. I found it useful, just as a jumping- off point for finding tools to help me analyze my own applications.</comment>


A laser turret enforced anti-mosquito fence - <AUTHOR> http://www.youtube.com/watch?v=eYXPqrXZ1eU

<comment><USER2> Tongue-in-cheek question: how many insects were harmed during the making of this video?</comment>


Ask HN:Is there a simple tutorial/site which can educate Kids about Animation? - <AUTHOR>

I often take my kids to the movies(animation) and asked them at the end, how was it? Instead of giving his reviews about the movie my elder one (7) often curiously asked me how this movie was made? To be frank I have no idea how to answer this question. All I know is that movie making and specially animated movies are extremely hard to make and it does require tons of computing power.<p>Can any one please point to a simple tutorial/site which explains the process of animation and how animated movies are made? I will go through it and will try to explain it to my son. <comment><USER2> Not quite what you were looking for, but you might find it interesting to check out the Dreamworks animation blog. <http://dreamworksanimation.tumblr.com/>

There are a bunch of steps, actually. If you're talking 3D animation, there's an ok blog post about it here:

[http://cg.tutsplus.com/articles/step-by-step-how-to-make- an-...](http://cg.tutsplus.com/articles/step-by-step-how-to-make-an-animated- movie/)

hope that helps.

</comment><comment><USER3> The best I can suggest (maybe others here can do better) is tell him to YouTube tutorials. There are ton of videos specifically on how animation software works and he can start there (similar to how phototshop tutorials or final cut tutorial works).

I'm not familiar with all the animated software used but Maya and 3DStudio comes to mind. For example: <http://usa.autodesk.com/maya/></comment>


The Hyperloop: BUSTED - <AUTHOR> https://www.youtube.com/watch?v=RNFesa01llk <comment><USER3> Issues I can see here as an outsider:

Comparing a giant vacuum chamber with a tube. The pressure on the tube will be spread better since the tube itself is so small. No need for huge thick concrete walls

Expansion: 6000 vacuum seals doesnt sound too bad... Just do regular checks on them

Pipe failures:

You could have airlocks every so often to seperate pipe segments when not in use Double (or even tripple) walled tubes, detect failures and shut down segments and conduct regular tests on segments Use strong enough walls to resist vandalism damage ("What happens if someone shoots a hole into it?") - Thick enough steel walls should probably do it, everything else is just a risk to be accepted (see terrorists on planes or any other thing ever) Not like you have to run the thing on a full vacuum either, partial atmosphere would help immensely too and will minimize the issues

"When it fails and you somehow survive the crash you will be stuck inside a tube with a diminishing air supply"

Again, there could be o2 tanks or filters in place to purify the air in case of an accident. Its not like it is impossible. It wasnt explicitly mentioned but he makes it sound like it is impossible to solve and there's nothing one can do except letting everyone inside the capsule suffocate to death and having them stuck in the tube for eternity

I can very much agree this is way too early to say ANYTHING and media shouldn't be hyping it as a ready made product, but please - its not like there won't be engineers to figure all this stuff out before, there'll be countless security tests and measures in place before taking it live.

It's not like they're trying to steal money off of people like the solar roadway guys either (unless I missed something?)

</comment><comment><USER4> Thunderf00t with another brilliant debunk.

These problems could be solved by having the Hyperloop operate at 1 ATM - <USER2> then what advantage does it have? Could the action of pulling the air in front of the tube to the back create a lower pressure in front and higher at the back, thus helping to propel the craft?

I vaguely remember reading something like this. Would that make it viable?

<comment><USER5> Isn't that more like a pneumatic railway?

</comment></comment><comment><USER6> All the problems the video talks about[1] boil down to the low pressure environment in the tube.

The video seems to assume that in the Hyperloop tube there is a "space like" vacuum while in reality the Hyperloop is planned to have a pressure of 100 Pa in the tube.

> To speed things further, air would be pumped from hyperloop tubes down to > 100 pascals, or one-thousandth of the air pressure at sea level, reducing > wind resistance. The remaining air would be compressed and fed through skis > that run the length of the undercarriage to levitate the train. [2]

The tube will have to withstand a pressure of about 1000 Pa which is about 100 kg/m*m. Doesn't sound so wild. Obviously the pressure will not be constant along the tube and it's not clear where the 100 Pa apply. In front of the capsule, behind the capsule, far from the capsule? Maybe for most of the tube the pressure will be much higher?

[1] I could only watch it without sound and closed captions. Maybe I missed something? Also it's funny how Youtube sometimes transcribes Hyperloop as hyperbole:-)

[2] [http://www.pbs.org/wgbh/nova/next/tech/hyperloop-and-high- sp...](http://www.pbs.org/wgbh/nova/next/tech/hyperloop-and-high-speed-trains)

<comment><USER7> For all practical purposes 100Pa is space like vacuum. The forces on the vacuum chamber are still immense, the consequences of failure still catastrophic, and breathing still impossible. The only difference is that the turbomolecular pump based engine is not theoretically impossible.

<comment><USER6> > For all practical purposes 100Pa is space like vacuum.

Pressure in outer space is more like 1E-11 Pa, at the Kármán line 100km above sea level we still have only 1 Pa.

> The forces on the vacuum chamber are still immense,

100 kg/m*m isn't immense in my book.

> The only difference is that the turbomolecular pump based engine is not > theoretically impossible.

No one is talking turbomolecular pump here, these are used below 10mPa. For 100 Pa an ordinary displacement pump will do.

<comment><USER8> _100 kg /m m isn't immense in my book._

Yeah, ISTM most floors in commercial buildings that serve crowds could probably handle that. (Not to say that such floors are airtight, but the basic engineering of supporting an average American man on every square yard of a particular surface is quite feasible.) It would be even easier for a self- reinforcing structure like a tube.

</comment></comment></comment></comment><comment><USER9> I was under the impression that not all parts of the hyperloop would be near 0 ATM. only the parts when the capsule was moving would be ~0 ATM. (so each section of the hyperloop would be at 0 ATM for an extremely short period of time per journey)

<comment><USER10> That what my impression was as well, it's not supposed to be a vacuum tube, it's a low pressure tube and the vehicles create a lower pressure zone in front.

</comment></comment><comment><USER11> Normally I like this guy, but this doesn't seem correct on many counts. I've seen flexible vacuum gaskets for vibration isolation that would easily allow for thermal expansion. I'm fairly sure the volume of air rushing into a break will go down as the pressure locally reaches 1 atmosphere so the "wall of pressure" wouldn't really act the way he describes because of drag on the walls. ETC...

</comment><comment><USER12> Does hyperloop require innovation ? Yes it does. If we just stopped innovating because the problems were tough, we would be stuck in the stone ages.

</comment><comment><USER13> The biggest problem this guy has is easily solved by having a valve on each section of pipe. As soon as a failure is detected, open all valves and let the pressure equalise evenly across the entire pipe, instead of waiting for a wall of air to hit you.

<comment><USER14> the problem then is that you have 2 shockwave fronts hurdling towards the train, what you would probably want is some emergency seals that could break as close to the train as possible to prevent a huge column of air hitting the train. Basically you would want the pressure wave moving away from the train into the tunnel rather than the train being caught up in it's way, other measures could be bulkheads that close off a portion of the track that the train is in during an emergency repressurization the only problem then is that you are unlikely to be able to stop the train fast enough for this to work. Your worse case scenario is a breach somewhere in front of the train because then you have tons of air hurdling towards the train at potentially supersonic speed + the train itself at 600mph that can't be pleasant.

<comment><USER13> The valves would limit intake to prevent causing a shockwave, and be spaced close enough to neutralize any shockwaves caused by catastrophic failure.

You could even open the valves intelligently, limit the valves as a function of the distance of the failure point. So the valves closest to the failure open the fastest to put air ahead of the shockwave, and the valves further away open slower to give further away carriages more time to break.

</comment></comment></comment><comment><USER15> Cringey youtube personality breaks some stuff on camera and claims to know more than teams of certified engineers.

<comment><USER16> Ad hominem attacks don't say much. I could say 'wacky billionaire claims to revolutionise rail industry in his spare time' but it says nothing about the viability of Hyperloop.

</comment></comment><comment><USER17> It'll be amusing to watch this video on my first hyperloop trip. There's a long history of people saying that innovative things can't be done.

<comment><USER18> He's not saying it can't be done - but that it has serious economic and safety hazards that have not yet been addressed.</comment></comment>


Show HN: Google Hash Code 2018 Simulator / Result Viewer - <AUTHOR> https://github.com/AkselsLedins/google-hashcode-2018-live-simulation <comment><AUTHOR> Hi HN,

I'd like to present you one of the project I developed recently.

After the Google Hash Code 2018 Competition, I thought I could create a "result viewer", I'm not really sure how to name it, to train my skills in Go development and because it seemed funny to do it this way.

The scores are the same as the Judge System from Google and the simulation is displayed using a graphic interface which can be disabled.

Everything, including the graphic interface has been developed in Go.

Just wanted to share it here to get some feedback !

<comment><USER2> The animation is visually interesting, but I don't understand what it represents. I know it is related to a programming competition, but what problem is it trying to solve?

<comment><AUTHOR> Some context on the competition:

 _We are given a list of pre-booked rides in a city and a fleet of self- driving vehicles. The objective of the competition is to assign the rides to vehicles, so that riders get to their destinations on time._

I updated the README.md with some illustrations to help you understand this project.

[https://github.com/AkselsLedins/google-hashcode-2018-live- si...](https://github.com/AkselsLedins/google-hashcode-2018-live- simulation#introduction)</comment></comment></comment>


Contributing to Clojure - <AUTHOR> http://insideclojure.org/2015/05/01/contributing-clojure/

<comment><USER2> Interesting to contrast with contributing to Servo, [https://github.com/servo/servo/blob/master/CONTRIBUTING.md](https://github.com/servo/servo/blob/master/CONTRIBUTING.md). Basically open a pull request on github and wait for review by a project team member.

Clojure has many more steps. I'm curious if those steps are by default due to the software they use (JIRA) or because of specific issues Rich saw with contributing.

Linux also has a very different contributor model, mailing list based, to either clojure or servo. Which I know is due to the volume of changes for each release.

<comment><USER3> It has nothing to do with the software. The intention behind the process is to have a screener + Rich agree the problem is a good one and a screener + Rich agree the patch is a good one.

Regardless, the work involved in all of the steps combined is insignificant compared to the essential work of creating and reviewing the patches.

<comment><USER4> Before I say anything, I want to say to onlookers: Alex, Rich, et al _bust their asses_ to do a thorough job of reviewing patches. Clojure has a stunning good track record of quality, backwards compatibility, and robust design. This is in no small part due to the meticulous contribution process.

That being said...

> the work involved in all of the steps combined is insignificant compared to > the essential work of creating and reviewing the patches.

Certainly true for most interesting bug fixes and enhancements. However, I've found that it's not true for a fair number of small issues I encounter on a not-uncommon basis. Most of them escape my memory now, but I've run across issues like docstring typos or the like, and it's just not worth the effort to submit a ticket and patch.

This particularly afflicts ClojureScript, where the review process isn't nearly as rigorous. Especially true when ClojureScript lags Clojure, and all the hard problem analysis and design work has been completed on the JVM side of the fence. Often a copy/paste is sufficient to get the work moved over to ClojureScript, in which case the work of creating a Jira ticket dominates the effort to make the change.

I don't have a particularly good solution. Part of the problem is learned hatred of JIRA... Anyway, I'll stop looking at this gift horse's mouth.

</comment></comment></comment><comment><USER5> I can't think of another open-source project with a more convoluted process for contributing.

<comment><USER6> digium requires you to sign a license agreement [https://issues.asterisk.org/jira/secure/DigiumLicense.jspa](https://issues.asterisk.org/jira/secure/DigiumLicense.jspa)

</comment></comment><comment><USER7> Ouch, they require copyright assignment. The only copyright assignment terms I've ever found agreeable were the Free Software Foundation's. I would not be willing to assign my copyright to a single person.

<comment><USER3> Note it's joint assignment - you retain yours as well.</comment></comment>


Tesla meets Q3 production goals of 50,000 to 55,000 Model 3s - <AUTHOR> https://electrek.co/2018/09/28/tesla-model-3-production-goal-achieved-record-quarter/ <comment><USER2> I have mine, having taken delivery at the end of August and it was ordered at the beginning of the same. Not a previous owner and did not reserve. Recently completed a 1600+ mile round trip with it.

As a car it is very competent, fun to drive, and well designed inside and out. As an EV, Tesla cars are in a league of their own. Build quality was very good, I do have three areas that are not as tight as I want but I will take it to the local service shop and let them tell me my options.

Are EVs ready for prime time? If your primary usage is local then yes. Even on our trip we needed three stops and the time charging plus to and from added over two hours each way. That can take a "tolerable" nine hour drive and push it into "well....". Plus the planning required to insure adequate range at your destination where you might be anchored to the nearest SC. (120v is desperation, 240/20a is minimum realistic and that is still but 12/15 miles ranged added per hour!)

While they will continue to add features over the life time of the car it does lack some simple quality of life attributes that I have had in cars more than a decade ago. From the mundane as to real bluetooth audio controls with playlist support and maximum audio startup to the required blind spot monitoring which apparently they will never put in the mirrors where it needs to be. Traffic aware cruise control works very well, auto steer at my current software level is good for 95% of the highway travel we had. Though cruise control's default speed is the posted limit and that can be damn annoying when that is lowered by weather or even construction - you cannot stop it - it will only assume your current speed if lower than what the maps say if there is a car in front of you or your going faster.

Still great news to hear, I like mine. Was a great step up from the Chevy Volt which sold me on EV driving. It isn't for everyone but give it ten years and it might be the default choice.

<comment><USER3> No maximum startup volume? That's honestly pitiful, Tesla.

An absolutely necessary feature. (no sarcasm)

<comment><USER4> Why?

<comment><USER3> I've found that I naturally reached for the volume knob on older cars which didn't have this very software-enabled feature.

It's something that I didn't notice nearly how much I used it until I enabled it and found myself grabbing the volume at startup and turning it down to 0.

</comment></comment></comment></comment><comment><USER5> This is very good news. If they can do this for ten more quarters there will be less carbon in the atmosphere and an oil glut for 2-million-barrels of oil a day will be removed from daily demand according to Bloomberg — Great graphs in the article too: [https://www.bloomberg.com/features/2016-ev-oil- crisis/](https://www.bloomberg.com/features/2016-ev-oil-crisis/)

<comment><USER6> I think it's probably closer to 1 million barrels/day if you factor in all the emissions and pollutants associated with mining the nickel/lithium for the batteries.

[https://www.theguardian.com/sustainable- business/2017/aug/24...](https://www.theguardian.com/sustainable- business/2017/aug/24/nickel-mining-hidden-environmental-cost-electric-cars- batteries)

<comment><USER7> > I think it's probably closer to 1 million barrels/day if you factor in all > the emissions and pollutants associated with mining the nickel/lithium for > the batteries.

This is the same type of argument erroneously used against nuclear -- factoring in costs in one place but not the other. As though internal combustion engines, transmissions, radiators, exhaust systems with rare metal catalysts, etc. are not made of raw materials that have to be mined and processed.

The curb weight of a Model 3 is on the same order as a Ford Taurus or BMW 3 series.

<comment><USER6> They to mine way more Earth for this rare Earth mineral batteries.

<comment><USER7> As opposed to, say, aluminum, which consumes so much electricity to produce that it amounts to ~3% of the world electrical generating capacity and producers have resorted to building their own power plants at the site of the smelting operation.

There is also the question of how much longer lithium mining will have to continue at this pace, since in a few years there will obviously be a dense source of lithium for new batteries in the form of all the old batteries that can be recycled.

</comment></comment></comment></comment></comment><comment><USER8> Hmmm... this seems to be a miss of the goal actually.

Here's the Q2 2018 earning call: [https://seekingalpha.com/article/4193497-tesla- tsla-q2-2018-...](https://seekingalpha.com/article/4193497-tesla- tsla-q2-2018-results-earnings-call-transcript)

> We continued to achieve 5,000 Model 3s per week, or 7,000 combined S, X and > 3, multiple weeks in July, showing that, so we're able to do this on a > sustained basis. And we expect to, in the absence of a force majeure or some > very unexpected event, be able to achieve an average of 5,000 Model 3s or > above for Q3 and 2,000 Model S, Xs or above per week for Q3 as well. So > essentially, 7,000 cars a week plus on average for Q3.

An average of 5000/week would be 13-weeks * 5000 == 65000. If Tesla makes only 55,000 M3 cars, then that's a miss by 10,000.

<comment><USER9> As a point of comparison, the big car companies make close to 200,000 cars a week.

<comment><USER10> As a point of comparison, the last US car company to be founded was Ford, in 1903. They all literally have a > 100 year head start in factories and whatnot.

Edit: GM in 1908 is the actual correct answer.

<comment><USER11> > They all literally have a > 100 year head start in factories and whatnot

Which really begs the question - why did Tesla scoff at outside help from the big car companies? They've figured things out already...

<comment><USER10> For ICE vehicles perhaps, not for EVs, or we'd see more than a token manufacturing capacity from them.

How many times did they manufacture 200k Volts or i3 EVs? Where is their serious battery production? Anything even 1/2 as big as the current gigafactory (which is about 30% finished and is still the aggregate battery capacity of almost every battery factory in the world in 2016).

<comment><USER11> Tesla's manufacturing woes are not with assembly of the EV components... it's with the build quality, speed and precision of assembling everything else, plus worker safety and required on-clock hours. This has been discussed here many times.

It reminds me of Chipotle famously scoffing at McDonald's attempt to teach supply chain management and more... and then Chipotle routinely having shortages of food items, quality and consistency issues, or suffering from nation-wide food-safety outbreaks. Turns out they could have leaned a thing or two...

<comment><USER10> That's fair, but I'm still a bit skeptical as most other manufacturers outsource the overwhelming majority of things where Tesla does things in- house. I mean they had to create their own Seat for the Model X as they wanted them to take an amount of force no "off the shelf" seat could. As a result, the traditional "scale up by buying more" model simply doesn't work quite as well. That said, Tesla could learn TONS from the rest of the industry, but that is why guys like Deepak Ahuja are executives there, their experience.

<comment><USER11> Yes, but you must acknowledge having a seat manufacturing company design and manufacture the seats probably would have resulted in a better, cheaper seat that was available sooner and with less trouble... after all, it's the only thing the seat manufacturer does as a business.

(I also don't believe the forces were so great that no seat could be bought or made by another company... some of the Tesla models have good performance... but they aren't alone in that arena)

The seat is a flagship example of NIH Syndrome - the same syndrome that has led to bloated costs, reduced profitability and poor quality and craftsmanship of Tesla vehicles. Tesla is figuring out how to do things for the first time - solving problems that have already been solved, and solved well by others. Looking towards the heavy-weights in the field and learning a few things could go a long way...

Also, they've had a lot of executive turnover... we've all heard the stories about what it's like to work for Mr. Musk...

<comment><USER10> I will acknowledge that they tried to have a seat manufacturing company design and manufacture the seats, and it failed: [https://www.reuters.com/article/us- tesla-seats/teslas-seat-s...](https://www.reuters.com/article/us-tesla- seats/teslas-seat-strategy-goes-against-the-grain-for-now-idUSKBN1CV0DS)

Gotta say, as a Model 3 owner, I don't see any build quality or poor craftsmanship in the vehicle and I took a very long time doing final inspection at the service center before taking delivery. I'm not saying it has the same build quality as say a high end Mercedes or BMW (the model 3 isn't in that category of vehicle), but it is the nicest car I've ever driven as a daily driver. He is trying to do something differently, and he very well might do it slower as a result, but vertical integration will definitely lead to lower costs in the _long run_ as there is simply less of the middle tier. When it comes to the guts, there is nothing but quality, and tesla easily stands alone in that regard: [https://cleantechnica.com/2018/02/19/tesla- model-3-stuns-ger...](https://cleantechnica.com/2018/02/19/tesla- model-3-stuns-german-engineers-wonders/)

TL;DNR: People have been hating on Elon since he said that banking could be online (when he founded x.com that became most of what is now paypal), and when he said he would found a rocket company, and when he said his rockets would be reusable by landing on boats, etc. He'll get it eventually, or die trying.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER12> Can they sell them at a profit, or have they saturated the market now? I heard they actually have enough inventory that they were doing same day deliveries and offering end-of-quarter incentives. That's great for customers, but not so much for a company that is not profitable.

<comment><USER13> Gross margins for model S and X are 25%+. The model 3 is supposedly profitable, at the scale that they have now achieved. Tesla's big spend is on R&D on new product lines, and ramping up production. In other words: their core business has long been cash flow positive. It's the growth that is requiring all the cash and creating short term losses.

<comment><USER14> I mean look at Amazon. They are basically on their last legs after doing the same idea. /s

</comment></comment></comment><comment><USER15> The pace of their growth is pretty amazing. The year I bought mine, 2015, they made just over 50,000 cars. Now they've made that many on one fourth the time, of just one model! Add in their other models and this quarter's numbers are close to the number they made in 2016.

They have not met their goals, but that's only because their goals are crazy ambitious.

</comment><comment><USER16> > Tesla had quite the ambitious Model 3 production goal for this quarter

They claimed to be able to consistently make 5000/week at the beginning of the quarter and that they'd be at 6000/week in August.

50000/quarter is <4200/week. That doesn't seem like "quite the ambitious" goal. If they were actually consistently making 5000/week at the beginning of the quarter, they could've taken 2 weeks off, just easily continue at the same pace that they were already doing and still hit that goal.

<comment><USER17> It's not like every week is the same. On a typical week they could make 5000, but on some weeks (say Labor Day), the production line has planned shutdowns.

</comment></comment><comment><USER18> And now they need to deliver the cars. I have two colleagues who are waiting for their cars. Apparently the deliver process (which Elon noted on Twitter) is pretty hectic right now.

<comment><USER19> I've heard the horror stories, but delivery for me was amazingly smooth. I signed a few pages of papers which were already prepared, and got a 10 minute tutorial on features, and drove out of there less than a half hour after I arrived. Best car buying experience ever.

<comment><USER20> Was that enough time to go through the Model 3 delivery checklist? [https://model3slo.org/model-3-delivery- checklist/](https://model3slo.org/model-3-delivery-checklist/)

With all the manufacturing defects we've been hearing about, I would think that purchasers should take their time inspecting the vehicle.

<comment><USER21> They have a 2 days no questions asked return policy, including paint. We had plenty of time to inspect ours and then do an even deeper inspection at home.

The car is nearly perfect!

</comment></comment></comment></comment><comment><USER22> "The automaker had been guiding a production of 50,000 to 55,000 Model 3 vehicles for the third quarter.

According to a reliable source familiar with Tesla's production, the automaker had a strong week of production and managed to bring the total number Model 3 produced to over 51,000 vehicles."

</comment><comment><USER23> I wonder how this will affect the upcoming earnings report. I think we'll have to see how it ultimately is going to mesh with the ongoing SEC investigation into Musk.

<comment><USER24> The phone call will be a stream of champaign bottles being uncorked followed by a "thank you".

<comment><USER23> Why did you make a new account just to comment on this?

</comment></comment></comment><comment><USER25> At least they were smart enough to aim a little lower this time. People love to complain about marginally too ambitious goals.

</comment><comment><USER26> Tesla has basically won

</comment><comment><USER27> No wonder the Tesla hating incumbents (ICE manufacturers, car dealerships in US/Canada, Big Oil Industry worldwide) are all out against Musk in every possible way.</comment>


Artist to debut 3D portraits produced from Chelsea Manning's DNA - <AUTHOR> https://www.fridmangallery.com/a-becoming-resemblance <comment><AUTHOR> ..As Chelsea described the collaboration: "Prisons try very hard to make us inhuman and unreal by denying our image, and thus our existence, to the rest of the world. Imagery has become a kind of proof of existence. The use of DNA in art provides a cutting edge and a very post-modern—almost 'post-post- modern'—analysis of thought, identity, and expression. It combines chemistry, biology, information, and our ideas of beauty and identity.</comment>


Lego launch their first sustainable blocks made from sugarcane - <AUTHOR> https://www.businessinsider.com/lego-go-eco-friendly-with-blocks-made-from-sugarcane-2018-8/?r=AU&IR=T <comment><USER2> is this gonna be like rats eating the wiring in my car while I'm on vacation because they made the sheathing from soy?</comment>


US Navy Destroyer Discreetly Tested Hyper Velocity Projectiles at 2018 RIMPAC - <AUTHOR> https://sputniknews.com/military/201901091071313617-us-navy-destroyer-hyper-velocity-projectile-rimpac/ <comment><USER2> this is also on this article [https://sputniknews.com/russia/201709291057806285-russia- ele...](https://sputniknews.com/russia/201709291057806285-russia- electromagnetic-weapons/)

mister tesla would perhaps roll over in grave to hear this abuse of his technology for war. this type of weapon is what scalar research is all about. this is not about free energy or any snakeoil tech. this is about understanding part of physics enough to weaponise it similar to how radiation was barely understood when the first nuclear reactors atomic bombs and experiments such mademe curie occured</comment>


Show HN: Winter.io – A Minimalistic HTML Template for Personal Websites - <AUTHOR> https://www.andypalan.com/winter.io <comment><AUTHOR> I received some pretty decent feedback on my design for my personal website and recently began receiving requests from people in my academic community to use the design for their own website. So, I figured I'd release the design as a template for other people looking to quickly build a decent-looking, no- frills personal website.

Feedback (either design, technical or both) is more than welcome!

Github: [https://github.com/malayandi/winter.io](https://github.com/malayandi/winter.io)

Demo: [https://www.andypalan.com/winter.io](https://www.andypalan.com/winter.io)

</comment><comment><USER2> www.andypalan.com uses an invalid security certificate. The certificate is only valid for the following names: _.github.com, github.com,_.github.io, github.io</comment>


JSONH: JSON Homogeneous Collections Compressor - <AUTHOR> https://github.com/WebReflection/JSONH

<comment><USER2> If going with this means adopting a specialized library with its own format, sticking with a fixed schema, and giving up human readable formatting, why not go whole hog and use protocol buffers instead? It'd be cheaper to convert and store.

<comment><USER3> Yeah, exactly. On the other hand, are there any good JavaScript implementations of serialization formats like Thrift/Protobufs?

Any new project like this that wants to be taken seriously should really provide metrics comparing both wire size and decode speed (ideally in 2 or 3 browsers) versus (at least):

      * Raw JSON
      * Gzipped JSON
      * Protobufs or some similar format

</comment></comment><comment><USER4> In a similar vein of "alternative ways to maximally leverage JSON" there is the Universal Binary JSON Specification <http://ubjson.org>

Unlike BSON or BJSON, UBJSON is 1:1 compatible with the original JSON spec, it doesn't introduce any incompatible data types that have no ancillary in JSON.

Simple is similar, but utilizes more complex data structures for the purpose of further data compression which is great, but introduces complexities in generation and parsing while UBJSON is intended to be a binary JSON representation as simple as JSON.

"as simple as" defined here as you being able to open the files in a HEX editor and read through it easily in addition to being able to grok the spec in under 10 mins (and generate or parse it just as easily as JSON itself).

Because it has 1:1 compatibility with JSON, the general parsing and generation logic stays the same, it is just the format of the bytes written out that change.

There has been a lot of great community collaboration on this spec from the JSON specification group and more recently the CouchDB team that has improved the performance and usability quite a bit.

There is a Java and .NET impl with a handful of people working on implementations in Node.JS, Erlang and C but I don't have much info on the status of those impls yet.

[1] [https://github.com/thebuzzmedia/universal-binary-json- java/b...](https://github.com/thebuzzmedia/universal-binary-json- java/blob/master/src/test/java/com/ubjson/io/MediaContentBenchmark.java)

[2] <https://github.com/eishay/jvm-serializers/wiki>

</comment><comment><USER5> You have two types of situations for JSON. Static and dynamic.

For static JSON, you have a flat file and that's that. It's always the same. In this case, all these fancy optimization formats are pointless. GZip the hell out of it once, cache it, and simply serve the compressed version. Binary compressed data is always optimal. The browser will automatically decompress and utilize. CPU is plentiful on the client-side. Debugging is easy, Firebug will display the clean JSON.

For dynamic JSON, you have a problem. You can't optimize or compress. Remember, it's all about total time. It doesn't matter if your data is now smaller if the amount of time it took to make it smaller is larger than the amount of time it would have taken to download the difference between the original data and the optimized data.

</comment><comment><USER6> Interesting, doesn't seem to explicitly handle nested arrays/objects.

<http://jsfiddle.net/uxAFb/>

I imagine passing a flag to indicate the properties which are arrays of objects should also be packed could work too.

</comment><comment><USER7> I think we all know what JSON is good for (unlimited documents without fixed schema) and what GZIP is good for ;)

</comment><comment><USER8> Sounds excellent - would love to create an ObjC server/client library to take advantage of this!

</comment><comment><USER9> Do you know why the performance page requests enabling Java to run?

<comment><USER10> From the JSPerf FAQ <http://jsperf.com/faq>

        Why does jsPerf use a Java applet on test pages?
        Do I have to enable Java to use jsPerf?
        The applet you're talking about is just a clever trick
        we're using to expose Java's nanosecond timer to
        JavaScript, so we can use it to get more accurate test
        results. jsPerf will still work fine if you disable
        Java; it might just take a little longer to run tests.</comment></comment>


Mark Text: the next Generation markdown editor - <AUTHOR> https://github.com/marktext/marktext <comment><AUTHOR> Features Realtime preview and use snabbdom as it's render engine. Support CommonMark Spec and GitHub Flavored Markdown Spec. Support paragraphs and inline style shortcuts to improve your writing efficiency. Output HTML and PDF file. Multiple themes. Various edit mode: Source Code mode、Typewriter mode、Focus mode.

<comment><USER2> It looks and behaves remarkably like Typora.

What's the story?</comment></comment>


Countdown to Knockout: Post 11 - Deploying to Joyent - <AUTHOR> http://nodeknockout.posterous.com/countdown-to-knockout-post-11-deploying-to-jo

<comment><USER2> I'd caution everyone about using Joyent. I company I work with used them for hosting (spent thousands on Accelerators) and had horrible IO. Clearly some other client was using all the disk IO related performance issues, yet their tech support claimed it was working properly. Note, this was all on Joyent's "new" architecture which was supposed to prevent these problems.

Joyent's tech support was arrogant, annoyed, and unhelpful. Caveat Emptor.

Bottom line was that Joyent thought that because it was using Solaris it could massively overload the number of zones per box. This was generally OK for CPU and memory sharing, but for disk IO it simply didn't scale well enough, yet Joyent's entire business model (and pricing) was based on the idea that you could squeeze a lot of zones onto one large box.

Example: Typing ls at the console would lag horribly, sometimes taking 3-4 seconds to return. Other times it would be lightning fast, and was thus declared a non-issue.

Heroku, on the other hand, has been fantastic. They even have responsive, helpful people on IRC most of the time.

<comment><USER3> Ryan Dahl works for Joyent, so I would assume they have a pretty good feel for how to run Node apps there.

<comment><USER2> There are surely a lot of very smart people there, but the ones I worked with had all drunk the kool-ade that Raid 10 on 15K spindles with ZFS was so _awesome_ that there couldn't be IO problems.

When you have a company that is using technology that is essentially beta (like ZFS) and you have to pay large amounts of money to Sun every time you need support, that creates an incentive to pretend the problem doesn't exist. Joyent also showed some signs of serious cash flow issues (half off if you sign up for a year) which may explain why they couldn't pay Sun enough money to identify and/or address the issues.

Note: Switching the app that I mentioned to a $100/month slice (off of a $400/month zone) resulted in a massive speedup and noticeably faster disk IO, db performance, etc.

</comment></comment></comment><comment><USER4> I presume you mean "Heroku", who already do node.js [http://blog.heroku.com/archives/2010/4/28/node_js_support_ex...](http://blog.heroku.com/archives/2010/4/28/node_js_support_experimental/)

<comment><USER5> Yeah, but without the limitations.

\- Latest version of node installed (and ability to choose node version)

\- You get an IP Address

\- You can use websockets and persistent connections

\- No 64 concurrent connection limit

\- You can actually use NPM and dont have to vendor everything

</comment></comment><comment><USER6> I love that you get benefits of both PaaS and VPS hosting combined.

\- Easy deployment via git push, on a pre-configured stack.

\- Freedom of installing/configuring anything via SSH access to your server, if you ever need to customize it.

</comment><comment><USER7> Err, how to get a coupon? (besides joining node KO which is closed now)

<comment><USER8> I'd really like to give it a spin as well (and didn't join node KO).

</comment></comment><comment><USER9> Are they providing a data persistence solution as part of their stack?</comment>


Ask HN: Feedback on javascript one-liner to add image moderation to any site - <AUTHOR>

Hello fellow hackers!
I have a service[0] that makes integrating tasks into your app that require human intelligence vastly simpler than using Mechanical Turk directly. The problem is you still need a developer to complete the integration.
To combat that, I'm working on a prototype to allow anyone to add a javascript snippet into their site, and it would automatically start moderating images via Houdini. No setup or developer needed. Pricing would start at less than $0.01 an image, but my ultimate goal would be to get it down to $0.001 per image.
Would sites that allow user uploads be interested in this? Photo sharing sites? Forums?
Demo video of very basic prototype: http://www.youtube.com/watch?v=M2cwTSGZCY4 (25 seconds)
Thanks! Chris
[0] Houdini, http://houdiniapi.com <comment><USER2> Would you be more specific on how this works? If we're not requiring developer integration, that means we can't tell the server an image is bad. Right? That means we have to ask your server whether the images on the page are safe? Does my website then pay $0.01 each time it asks (I assume you cache the answer), or $0.01 per the lifetime of the image?

<comment><AUTHOR> The price would be $0.01 for the lifetime of the image; not every time your application ask for the image.

This idea would just be the starting point for integration; we could offer a callback to integrate with your backend after an image has been moderated, so you could handle it as you wish. (For example, remove an offensive image entirely from your site)

</comment></comment><comment><AUTHOR> Clickable links:

Demo video: <http://www.youtube.com/watch?v=M2cwTSGZCY4> Houdini: <http://houdiniapi.com>

</comment><comment><USER3> That's a fantastic idea. Go for it.</comment>


Untitle - <AUTHOR> http://reddit.com/user/dmimstratot

<comment><USER2> It's just a page not found. Was this supposed to go to something different?</comment>


Ask HN: Is Oracle Java 7 no longer secure? - <AUTHOR>

Unless I missed something, it seems Oracle's Java 7u9 JRE no longer enables checking of SSL Certificate Revocation Lists (CRLs)[see: http://docs.oracle.com/javase/7/docs/technotes/guides/deployment/deployment-guide/jcp.html#security - search for CRL, notice the default]. Does this mean any ssl certificate that may have been compromised and placed into CRL is no longer validated? <comment><USER2> Yeah, probably. But CRLs were always unreliable (how much software do you think blocks the connection if the CRL/OCSP/... cannot be found? You need to twiddle a well-hidden switch in Firefox to make it check, and the results are not pretty - big CAs like Verisign time out all the time). Something like [https://crypto.stanford.edu/~dabo/pubs/abstracts/ssl- client-...](https://crypto.stanford.edu/~dabo/pubs/abstracts/ssl-client- bugs.html) is far more likely to actually bite you.</comment>


The missing iPhone app - Is this possible? - <AUTHOR> http://www.siliconvalley.com/latestheadlines/ci_11647436?nclick_check=1&forced=true <comment><USER2> In contrast to other SDK/platforms like Windows Mobile, Core Telephony is a private framework - unlinkable.

<http://iphone-rejectdb.appspot.com/detail.html?id=23>

</comment><comment><USER3> I'm fairly sure that only Apple could add this feature. Almost everything having to do with the cellphone part of an iPhone is off-limits to third-party developers.

</comment><comment><USER4> The iPhone actually does notify you (though it's only audio and not visual) if you have a missed call, voice-mail or text. It beeps every 10 (or is it 15) minutes. I would definitely prefer a visual notification. For that matter, how about visual notification for e-mails, tweets, etc?

</comment><comment><USER5> this already exists. It's a jailbroken app -- I believe it's called SMS Notify, or just notify.

It lets you specify a "vibrate every x for y" setting - eg vibrate every 10 minutes for every missed call</comment>


Apple: 200,000 iPhone developers so far - <AUTHOR> http://www.macworld.com/article/133146/2008/04/iphonedevs.html

<comment><USER2> I guess walled gardens work okay when everyone's knocking on the gate.

</comment><comment><USER3> 200,000 download != 200,000 developers

<comment><USER4> Let's say half of them ever actually make an effort to develop apps (100,000). This could possibly be wildly optimistic.

I bet only 10% of them will ever actually ship anything (10,000). Of these, probably 90% will suck (1,000).

It still seems like enough to have quite a few really awesome applications that cater to enough lifestyle/professional niches (photography, GTD, CRM, ...) to create a little bonzai-tree software ecosystem, one that Apple has by the balls at all times.

</comment></comment><comment><USER5> Am I the only one who thinks "The App Store" is the exact same thing as Brew? Brew is pretty stagnant now, and I've always thought that Qualcomm's iron grip on the platform accelerated its death. I wonder how long Apple can keep a vibrant community interested in iPhone application development.

<comment><USER6> The general feeling I get from developers for OS X is that on the whole, Apple supports them well in their endeavours and that Apple gives great respect for people who develop on their platform. That being said, the lack of an SDK from launch was a bit of a blow to developers.

On the whole though, I'm expecting Apple to really push this, as they're talking up the App Store as a whole new market for them to enter into. They're not about to take the risk of harming their developer base.

</comment></comment><comment><USER7> i'd _like_ to be an iphone developer, if apple would let me. they have given out only a handful of dev certificates, needed to install apps on real iphones, and the process reportedly degrades the phone such that it can't be used normally anymore. what the heck.

i'm as big an apple fanboy as anybody, but this is making me suspicious. i'm in wait-and-see mode.

</comment><comment><USER8> June could not come any sooner.

</comment><comment><USER9> I hope apple is not making the same mistake with the iPhone that AT&T made with its personal computer in the early 1980s. I personally think that the most profitable route for Apple would be to just publish the internal hooks for the iPhone OS and let people develop as they like. The extra apps from this move would make the iPhone an even more attractive device.

<comment><USER10> I heard rumors that Apple is a bit of a control freak that's fanatical about user experience. That seems to preclude letting anyone release anything on their platform.</comment></comment>


Show HN: A small js library to control the execution of (third party) scripts - <AUTHOR> https://snipsco.github.io/yett/ <comment><AUTHOR> With so much talk about GDPR and analytics, I thought this might interest you!

Yett is a small webpage library to control the execution of (third party) scripts like analytics that we use at Snips to remove analytics until people opt-in</comment>


Using the KVM API - <AUTHOR> https://lwn.net/SubscriberLink/658511/4d01711a15d0268d/ <comment><USER2> I have been considering a subscription to lwn.net. I am a kernel-enthusiast (not quite a kernel hacker).

I see articles from there linked to HN fairly regularly but can anyone here shed a light on the quality of articles?

<comment><AUTHOR> > can anyone here shed a light on the quality of articles

Exceptionally high, in general. I find it the next best thing to subscribing to the LKML firehose; LWN summarizes developments in the kernel and many other areas, in addition to detailed technical articles on specific topics. If you do any work at all in Open Source, and especially if you care about the Linux kernel, you should subscribe.</comment></comment>


I left my programming job today to study mathematics  - <AUTHOR>

I left my programming job today to study mathematics/ algorithms - for a year. Give me some courage, suggestions Community! <comment><USER2> work hard !!!</comment>


The truth about Asian Americans' success (it's not what you think) - <AUTHOR> http://www.cnn.com/2015/08/03/opinions/lee-immigration-ethnic-capital/index.html?sr=cnnifb

<comment><AUTHOR> Talks about class privilege for Asians.</comment>