Building Memory-efficient Java Applications - <AUTHOR> http://domino.research.ibm.com/comm/research_people.nsf/pages/sevitsky.pubs.html/$FILE/oopsla08%20memory-efficient%20java%20slides.pdf

<comment><USER2> Very nice presentation. However much of this can be actually discovered and felt first hand just by playing with profilers that support memory profiling (such as yourkit[1]).

After a few hours playing with it, you will never forget the precious lessons on this presentation.

[1] <http://www.yourkit.com/>

</comment><comment><USER3> This is probably an 'apple and oranges' type of question, but I haven't used Erlang, nor Java to build large applications.

Does anyone know how Erlang compares to Java in regards to memory usage/performance?

<comment><USER4> Per object overhead in functional languages is usually lower since polymorphism is handled at the function level rather than the data level. You don't have to store class pointers etc, just the raw data and probably a type tag.

I can't find a reference for erlang's representation but I _believe_ it has only a little more overhead than ocaml which is described here - <http://rwmj.wordpress.com/2009/08/04/ocaml-internals/>

<comment><USER3> I know I should thank you by up voting. But also, just want to say that the guide was a very interesting and insightful read.

</comment></comment></comment><comment><USER5> For those of you who may not be familiar with them, using <http://fastutil.dsi.unimi.it/> collections instead of Java collections is essentially the work-around for most things you'll use. Fastutil has custom classes that remove the pointer overhead associated with storing primitives. Unfortunately, Java really falls apart at the primitives aren't objects thing when it comes to performance.

</comment><comment><USER6> It just goes to show that whatever language you use, you need to understand what the abstractions are doing: what bytes are really going where?

</comment><comment><USER7> Some (not all) of these cases would be helped massively if the JVM gained an equivalent of the fixnum/flonum types from the LISP world. This has been proposed kind-of seriously in the past, e.g.:

<http://blogs.oracle.com/jrose/entry/fixnums_in_the_vm>

Has anyone seen anything more recent?

</comment><comment><USER8> from 2008. slide 25:

 _experiments on a sampling of different JVMs._

More recent :

[http://vanillajava.blogspot.com/2011/07/java-getting-size- of...](http://vanillajava.blogspot.com/2011/07/java-getting-size-of- object.html)

[http://vanillajava.blogspot.com/2011/07/java-how-much- memory...](http://vanillajava.blogspot.com/2011/07/java-how-much-memory-do- different.html)

[http://kohlerm.blogspot.com/2008/10/knowledge-about-much- mem...](http://kohlerm.blogspot.com/2008/10/knowledge-about-much-memory- things-need.html)

[http://kohlerm.blogspot.com/2009/02/how-to-really-measure- me...](http://kohlerm.blogspot.com/2009/02/how-to-really-measure-memory-usage- of.html)

[http://marxsoftware.blogspot.com/2011/12/estimating-java- obj...](http://marxsoftware.blogspot.com/2011/12/estimating-java-object-sizes- with.html)

(i have zillions bookmarks on this)

</comment><comment><USER9> Does anyone know of a similar study of memory efficiency in C# (or the CLR in general)?

</comment><comment><USER10> Cool! Very good explanations.

</comment><comment><USER11> TreeMap<Double, Double>, 100 entries, 8.6 kB, 82% overhead

Man, that's just annoying.

</comment><comment><USER12> That's great, but perhaps they should teach some of this to their colleagues at IBM first.</comment>


Ask HN: Design for frontend developer - <AUTHOR>

In spite of the "PHP developer" title in my CV, recently I am becoming more and more "frontend-oriented". That's perfectly fine, because I love frontend. The only thing that's keeping me uneasy is that almost every frontend developer position out there also requires considerable experience in UI and design in general.<p>Is it a trend now? Are frontend developers required to learn design? And if yes, then which books/courses/articles would you suggest? <comment><USER2> Design (UI/UX) can be learned as any other skill. All the necessary information is on top of your fingers at this moment :)

Do stuff as much as possible and focus on the output, e.g. look for quantity over quality. [0] It's important to have the proper mindset, so you have to learn how to ignore the frustration and how to fight your ego. The paradox here is that if you follow this approach, at the end you start producing more and more quality work.

Deliberately replicate other people's work. With the time you'll start noticing different patterns and trends and build on top of them your own ideas.

[1] Read psychology and have genuine interest in humans - why do we respond to given things, why these things work and experiment with them.

[0] [http://www.amazon.com/The-War-Art-Through- Creative/dp/193689...](http://www.amazon.com/The-War-Art-Through- Creative/dp/1936891026) [1] [http://getmentalnotes.com/resources](http://getmentalnotes.com/resources)

</comment><comment><USER3> A FE dev doesn't need to have design skills per se but it's handy and increases your market value.

How to get there: just create stuff, start with smaller things (like a simple blog design or even smaller like a page about yourself) and get inspirations from other talented designers. Maybe you just copy their stuff 1:1 in the beginning just to get some feeling for shapes and colors.</comment>


I found the AirBnB logo in Trademarks and Symbols of the World published in 1988 - <AUTHOR> https://www.reddit.com/r/Design/comments/3jz4qq/i_found_the_airbnb_logo_in_trademarks_symbols_of/

<comment><USER2> So last month it was the Tokyo Olympics emblem[1], two days ago it was Google's new logo[2], and today it's this.

Is the world ever going to come to grips with the fact that many tens of thousands of thousands of logos and trademarks are registered each year [3], and it's fairly inevitable that some of them will look alike?

[1] [https://www.google.com/search?tbm=isch&q=tokyo+olympics+thea...](https://www.google.com/search?tbm=isch&q=tokyo+olympics+theatre+de+liege)

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

[3] Or a lot more, I'm just going from this: [https://oami.europa.eu/tunnel- web/secure/webdav/guest/docume...](https://oami.europa.eu/tunnel- web/secure/webdav/guest/document_library/AnnualReport/2013/content/en/trademarks.html)

<comment><USER3> > Is the world ever going to come to grips with the fact that many tens of > thousands of thousands of logos and trademarks are registered each year [3], > and it's fairly inevitable that some of them will look alike?

"This logo was designed by Akisato Ueda for a Japanese drive-in called Azuma in 1975."

So, not a big deal methinks. US Code calls for the standard to be confusingly similar and in the same industry.

</comment></comment><comment><USER4> High resolution version for comparison can be found here [1] and airbnb logo over here [2].

1: [http://www.graphis.com/logos/cc1c717c-4b40-11e2-ae70-f23c91d...](http://www.graphis.com/logos/cc1c717c-4b40-11e2-ae70-f23c91dffdec/)

2: [https://upload.wikimedia.org/wikipedia/commons/thumb/6/69/Ai...](https://upload.wikimedia.org/wikipedia/commons/thumb/6/69/Airbnb_Logo_B%C3%A9lo.svg/1280px- Airbnb_Logo_B%C3%A9lo.svg.png)

</comment><comment><USER5> Did people forget Automation Everywhere Logo?

[http://images.bwbx.io/cms/2014-07-17/0717_airbnb_630_INLINE....](http://images.bwbx.io/cms/2014-07-17/0717_airbnb_630_INLINE.jpg)

</comment><comment><USER6> Did the Azuma one expire? Or did the company go out of business?

<comment><USER7> More likely nobody knew of it. It's the sort of design treatment of a A that multiple people could come up with it independently.

</comment></comment><comment><USER8> This is an outrage</comment>


Show HN: How we got the POWER SYMBOL accepted into Unicode in 60 days - <AUTHOR> https://github.com/jloughry/Unicode/#readme

<comment><USER2> Really proud to have been a part of this :-)

You can see the fonts in action at [http://unicodepowersymbol.com/](http://unicodepowersymbol.com/)

<comment><AUTHOR> Let's see what happens if I paste the new characters directly into a comment. Here are 23FB ⏻, 23FC ⏼, 23FD ⏽, 2B58 ⭘, and 1F32D 🌭.

You'll see them if you have the .ttf font installed: [https://github.com/jloughry/Unicode/blob/master/Unicode_IEC_...](https://github.com/jloughry/Unicode/blob/master/Unicode_IEC_symbol_font.ttf?raw=true)

</comment></comment><comment><AUTHOR> This was first proposed on HN in December. It took about two months to get it done: [https://news.ycombinator.com/item?id=6828102](https://news.ycombinator.com/item?id=6828102)</comment>


A powerful comment on racial bias, cops and VCs - <AUTHOR> http://avc.com/2016/07/furious-friday/#comment-2772058619 <comment><USER2> Original title is 'Furious Friday' and it's a pretty lame and short article.

<comment><AUTHOR> The link is to the comment of Brandon Burns, that is a comment to Fred's post. However, Disqus loads pretty slowly.</comment></comment>


How to Fish for (and Land) IT Talent - <AUTHOR> http://www.cio.com/article/2835765/careers-staffing/how-to-fish-for-and-land-it-talent.html#tk.IDGENTERPRISENLE_nlt_insider_2014-11-06

<comment><USER2> I hate paywalls.</comment>


Create a SaaS in 18 steps - <AUTHOR> https://smalldata.tech/blog/2017/08/20/create-a-saas-in-18-steps <comment><USER2> Typical programmer advice, you forgot to generate an income along the way. By step 18 you are already broke.

<comment><AUTHOR> See step 12 - it is specifically mentioned that it might make sense to integrate payments right at the beginning depending on the MVP.

<comment><USER2> My deepest apologies, i cant get my head around it that i din't notice that. Time to take a break.</comment></comment></comment>


Does the world need yet another programing language? - Ceylon - <AUTHOR> http://www.javaworld.com/javaworld/jw-04-2013/130425-a-first-look-at-gavin-king-s-ceylon.html?source=IFWNLE_nlt_jw_2013-04-30

<comment><AUTHOR> <http://ceylon-lang.org/></comment>


Wio: A Clone of Plan 9's Rio for Wayland - <AUTHOR> https://drewdevault.com/2019/05/01/Announcing-wio.html <comment><USER2> This is really cool! I've always wanted to use a Rio-like WM but my chronic lack of gumption kept me from installing one. Wio looks sufficiently neat that I think I should get around to trying it.

For people who like new window manager things and also Rio, it's worth also checking out this piece of the Arcan Project: [https://arcan- fe.com/2017/04/17/one-night-in-rio-vacation-ph...](https://arcan- fe.com/2017/04/17/one-night-in-rio-vacation-photos-from-plan9/)

</comment><comment> Avi-D-coder This is very cool, but I have to ask, why would I want new windows to take over their root? Most things launch asynchronously, leaving their parent usable.

Did plan 9 use this model because blocking launchers were the norm not the exception?

<comment><USER3> It's just a different model. It's hard to explain exactly why, but it works - though it's definitely not what most people are used to. Give it a shot! Though I'd recommend trying it out on Plan 9 itself, where the applications are designed around it, before settling your doubts for good.

<comment><USER4> Isn't it more or less a case of usually launching an application into a newly created window? It's been a long time.

The Plan 9 emphasis on per-process namespaces corresponds to the idea that a new graphical application is given a handle for a framebuffer that corresponds to the size of the window it can draw in. The Rio idiom has every window start by default as a textual terminal, so it's natural to be able to take over that framebuffer to run a graphical app.

It's a bit like the situation on older systems, like Sun workstations, where the textual console and the graphical display were only informally separated: sometimes the X server's display would be interrupted by lines of text printed onto the screen by the kernel's console driver.

</comment></comment></comment><comment><USER5> This looks like a really interesting project.

Im always looking for new window interaction styles. And this seems refreshing after years of minor tweaks on win95's style.

I really should have tried plan9 years ago instead of always procrastinating.

</comment><comment><USER6> Can anyone suggest interesting work that is kind of the opposite of this? Vast real estate, rich HIDs, dynamic autonomous presentation?

So focused on many/big screens, with an eye towards future high-res AR/VR 3D, rather than a single "space is precious" small screen. Rich human interface devices, like multitouch and 3D hand pose and stylus and head position and gaze, rather than a single mouse. Display as a dynamic ecosystem of presentations, under the influence of multiple agents, rather than detailed manual control. UI as collaborative improv dance, rather than as micromanagement.

Punchcards and console toggles; teletype printer; VT100 terminal; small bitmapped monitor and mouse; larger monitor; largerer monitor; largererer; multiple monitors; with multitouch and stylus tablet; future high-res AR/VR... as tech so very slowly becomes less crippling, the UIs do too...

Hmm, though for _current_ VR, with its 1980's VGA-like non-blurry pixels are more precious than they've been for decades, fine-grained control and space sharing might be quite nice?

<comment><USER7> As far as I'm concerned I already have a multi-touch hand pose interface, one that's seen more than a century of improvements. Not sure what 3D would add to it. Perhaps just a larger attack vector for tennis elbow, i.e. _literally_ crippling.

When I see movies with 3D projected interfaces and people interacting by waving their hands around them I can't help laughing about the ergonomics of it. I have similar thoughts about the general applicability of VR. For as long as VR means focusing on a screen a couple of centimeters from your eyes, it's not going to be a generally useful productivity tool because of the eye strain. With a monitor I can easily turn my chair and focus on something else for a few minutes.

Overall, it's my opinion that the goal of designing human interfaces should be to minimize cognitive load, eye strain and arm strain. Window management "as collaborative improv dance" with "3D hand poses" sounds like the exact opposite of that. The future of human computer interfaces IMO lies in things like replacing the mouse with something that requires less hand movement, technology like e-ink to improve legibility and minimize eye strain, mouseless window management, ergonomic keyboards...at least generally.

I can still see how VR and 3D gesturing can be immensely useful for things like CAD and video games, but in general I use my computer to read and write documents (maybe a specialized use case in itself). Whether those documents fly around in a 3D space or are projected in thin air in front of me is uninteresting to that end.

That said, to sort of answer your question, here is an interesting paper: [https://our.oakland.edu/bitstream/handle/10323/4785/An%20Inf...](https://our.oakland.edu/bitstream/handle/10323/4785/An%20Infinite- Pane%2C%20Zooming%20User%20Interface%20Window%20Manager%20and%20Survey%20of%20X%20Window%20Managers.pdf?sequence=1&isAllowed=y)

<comment><USER6> > one that's seen more than a century of improvements

Ah, I have tried quills a couple of times. And dip pens. It was interesting. ;)

> movies [...] can't help laughing about the ergonomics of it

Yes. Though they do seem to have an "outreach" role, raising awareness and interest that improvement over the familiar is possible.

And moving while working, like shifting from sitting to standing desk and back, and walking, can be nice.

> minimize cognitive load, eye strain and arm strain

Nod.

> focusing on a screen a couple of centimeters [...] eye strain

The focus distance is usually either around 1 m, or infinity. Downsides include being fixed, creating vergence-accommodation conflict. Prototypes, and the new Microsoft Hololens 2 (which paints the retina), variously improve on this.

> minimize cognitive load

One thing I've played with, is taking a downward keyboard-cam of hands on keyboard, and overlaying it on a 3D monitor. Raising it slightly in Z seemed to allow focusing past it, making it merely bothersome, rather than untenable. Upside is it reminded me of an old Lisp Machine, with the screen telling you what various keystrokes would do in your current context, so I don't have to remember them all.

> less hand movement

Yes. I really like the idea of keyboard as multitouch surface. Stroke a keycap, rather than moving to a touchpad. Touch a modifier key keycap, rather than having to actually press and hold it. And optical finger tracking allowing subtle hand gestures to be commands.

> read and write documents [...] 3D space or are projected in thin air in > front of me is uninteresting to that end

Hmm. Sometimes it's useful to print out a document, and put it up on a wall, so you can see the big picture, or talk with someone about it. If one has a task which fills the available monitor space, it's easy and common to remember what it was like with a smaller monitor, and not want to go back, but harder to imagine whether the same might happen again with further expansion.

More generally, one thing that cheaper real estate might do is lower the barrier for tooling to provide speculative assistance. You're writing for an audience including someone from Great Britain, using a phrase that has different meaning there than in the US... checking that with a keystroke, or as part of a "I'm done, check it now" report, seems less attractive than "comments are available off to your side - glance if you care". Grammarly meets VR.

For myself, writing documents is often preceded by a lot of graph drawing, as I figure out the structure of the domain, concept space, and presentation alternatives. I very much look forward to moving that into direct-manipulation 3D.

</comment></comment></comment><comment><USER8> Video doesn't play on iOS

<comment><USER9> It might if you wait. It shows a gray screen for a good while before you see something that indicates that the video is actually working.

<comment><USER10> It really does not play on iOS, as in it's replaced by a crossed-out play symbol.

</comment></comment></comment><comment><USER11> In what way is this not possible with X11? Don't for example tabbed containers in i3 kind of work like this?

<comment><USER12> This project is very cool, but I also think it was kinda possible on X11. However not as easy and that's why this project is exciting for me.

I tried to hack on tabbed from suckless [0] with a little utility to achieve a similar behavior. An X11 proxy that would rewrite window creation so that the parent window would be tabbed xid and not root window [1]. It kinda worked, but I never finished this for transient windows.

So you would start with a terminal inside tabbed instance with tabs hidden. The terminal would be behind chrwin proxy. Then when you launch anything inside, it would become a new tab and tabbed would switch immediately to it. There could be a possibility to kill the terminal after spawning a new client. But I intended to just leave it by default so you would go back to it.

Edit: that was my first approach. I wanted then to not rewrite window creation, but to reparent it afterwards. Something like this. It was supposed to simplify transient window handling, because the client would take care for it. At least that's what I remember.

[0] [https://tools.suckless.org/tabbed/](https://tools.suckless.org/tabbed/)

[1] [https://github.com/hadrianw/chrwin](https://github.com/hadrianw/chrwin)

</comment></comment><comment><USER13> I was wondering recently if I could tell Sway to use floating mode for all windows as a kind of first step to something like this. This is obviously much better, though!

</comment><comment><USER7> Interesting project! For X11 users there's 9wm. I wonder how it compares to Wio.</comment>


Ask YC: Isn't the Chrome hype a little too much? - <AUTHOR>

Its day 2 and i still see 3/10 posts on HN are someway related to Chrome.
With Chrome Google follows suit with Apple. Awe everyone even before the launch such that for a long time even after the launch people think twice to put a negative comment or point at a limitation. These ones just feel out of the place and are outcast too!
No one comments even though logically thinking iPhone is marginally superior to high end Nokia phones except for the cool UI and a lot less robust and way too pricey.
A cult following. I wonder what happens long term ? Does this break wisdom of crowds because the crowd leaves in the hype and their vision is blurred ? <comment><USER2> I would've agreed with you before the launch, but after actually using the browser, I'm extremely impressed.

It's difficult to deliver on hype (cuil), and few companies can do it well (apple), but I think google got it right with chrome.

<comment><USER3> Exactly. I was wondering what the big deal was over the weekend (I didn't get a chance to read anything about it until Tue), but now that I've used it, I think it's going to be amazing. Either a) other browsers will speed up and clean up to match it (unlikely due to backwards compatibility with extensions) or about 6-12 months from now it will be my only browser (it is already my primary browser). Same thing happened with Google search, Google Maps, and Gmail. I'm not an uncritical fanboy but I've been here before.

<comment><USER4> Back in the mid 90s, before IE, Netscape was the "only" browser in the sense that every release was a new de facto standard for HTML. That was actually a good time; the web evolved very fast.

It would be cool if Google did that with Chrome. I prefer de facto standards to the type slowly and tediously produced by committees, unless they're overtly evil (i.e. create lock-in for one company), which this clearly isn't.

I've always wished we could go back to the time when someone just made more and more powerful clients, and everyone else had to follow or be left behind.

<comment><USER5> De facto standards _always_ create lock-in to a product, at least initially. Nowadays, committees are necessary because no one wants to let their competitor set any standards, "de facto" or not!

<comment><USER6> How do you do lock in with a FOSS product?

</comment></comment></comment></comment></comment><comment><USER7> I have seen, I believe, 4 different articles concerning Chrome and privacy concerns, as well as an article about a Chrome-related security vulnerability. All of these are, in my opinion, negative -- not hype.

In contrast to the iPhone, I have seen a lot of "it is cool and fast, but I'm not leaving FF/Safari/Opera just yet." When the iPhone launched, it went a little something like, "ZOMG! I will totally be in line for this at 5am even though I hate AT&T and mornings!"

Google Chrome is kind of a big deal. It's not surprising that everyone is talking about it. If everyone is talking about it, it's not surprising that the fact is reflected on the HN main page.

</comment><comment><USER8> A bit too soon for "wisdom of crowds" to kick in? I'd say give it a few weeks and we'd know.

Agree about the hype. But we're a generation of sub-second attention spans and instant gratification.We're hype-prone. And come on - one of the world's largest technology companies has launched their version of the most used tool in these days - it's bound to generate excitement. I'm guessing it'll simmer down in a few days.

And everything (of any note) will have a cult following as well as a cult anti-following!

<comment><USER9> Agreed about people being hype prone, look at the comments system on Digg. It doesn't particularly matter if your comment on any submitted story is as insightful as the rest, just as long as your among the first to comment your almost guaranteed to get boosted high and to reap the associated benefits with it.

It doesn't seem to be limited to any particular "group" of people either.

The same thing happens here on HN aswell to a smaller extent & I fully expect to get modded down to all heck because of this comparison.

To me, wisdom of the crowds is abit of a misnomer, as once there is an original "acceptance" by a small group of people, the web 2.0 echo chamber kicks in.

This kind of effect is not just limited to social news sites either, the exact same thing happens with blogs aswell - eg, a story might appear on Techcrunch, and then 1000 "me too" posts will pop up around the place.

<comment><USER10> It's not only blogs. The traditional media suffers from it as well. If there is significant hype with traction, everyone wants to hitch their wagon to it.

I saw a documentary about Charlie Chaplin. This was happening to him back in his day. This has probably been going on since we've had _culture_.

<comment><USER9> _This has probably been going on since we've had culture._

You know, I just had a weird connection when you mentioned that - I'm reminded of one of the early scenes to 2001: A Space Odyssey... The "dawn of man" scene. Link posted below for reference.

<http://www.youtube.com/watch?v=m2XcPNSeUMQ>

One ape wakes up and notices the monolith, starts to make a little noise. This in turn wakes up the rest of the apes and they start to make more noise, their tribe is running quite wild.

Eventually one starts to try and interact with the object, soon more follow and learn from it.

If you think about it, this is pretty much the essence of web 2.0

<comment><USER6> It's even affecting delicious though to a lesser extent. The links there are much higher quality & something that caliber probably would show up anyway.

<http://delicious.com/> (half the links were chrome related)

<comment><USER9> I'd be curious to see if there was a way to measure this effect with any kind of certainty. Must ponder this some.

</comment></comment></comment></comment></comment></comment><comment><USER11> Chrome is, practically, a brilliant new operating system. It has a new permissions structure, built in malware protection, a compiler, a javascript virtual machine, a task manager, a rendering engine, a new process management system, local storage, and is wicked fast. This is the biggest technical jump in browser tech since mosaic.

You'd hear this much about a new windows or mac os, but it would mean far less. Chrome will open the way for web apps that are as good, as robust, and as beautiful as desktop apps. It's more than just hype.

<comment><USER12> You're right.

It is also "merely" a brilliant combination of a number of technologies which have been maturing for quite a while. See for instance: "Open Standards Beyond Java: On the Future of Mobile Code for the Internet" by Michalel Franz at UC Irvine. (1998) [http://www.jucs.org/jucs_4_5/open_standards_beyond_java/Fran...](http://www.jucs.org/jucs_4_5/open_standards_beyond_java/Franz_M.html)

</comment></comment><comment><USER13> There is a lot of discussion for two reasons: (1) the browser is really really good, and as some others have pointed out, it has the potential to really bring in a new era of computing. (2) anything to do with Google / Apple / Facebook is a HUGE link bait, and so news sites / bloggers want to milk it to the maximum.

Edit: also, the iPhone is right to be hyped despite all its flaws. Apple has shown us another way of creating an extremely elegant (albeit sometimes less than usable) user interface with little screen space. In the next few years, you will see everybody copying it and taking it to the next level. The iPhone is good not because what it is right now, but because of all the future potential it has unleashed. Also, a jailbroken iPhone is a hacker's dream despite the closedness of the platform.

</comment><comment><USER14> Delivering a basically feature-complete browser after near complete radio silence is pretty impressive if you ask me.

</comment><comment><USER15> I was curious about the same thing and my keyword count script prints this :

chrome : 39 google : 37 startup : 12 web : 11 ask : 11 new : 11 yc : 8 browser : 8 code : 7 chromes : 7 javascript : 7 y : 5 windows : 5 best : 5 game : 5 chromium : 5 v8 : 5 link : 4 combinator : 4 talk : 4 write : 4 language : 4 hn : 4 python : 4 history : 4 technology : 4 programming : 4 twitter : 4 facebook : 4 live : 4 chrome? : 3 project : 3 erlang : 3 market : 3 whats : 3 source : 3 good : 3 friendfeed : 3 things : 3 adds : 3 company : 3 googles : 3 make : 3 job : 3 does : 3 engine : 3 inside : 3 application : 3 business : 3

</comment><comment><USER16> The magic of chrome is basically it's javascript engine, which is the first major implementation (from scratch) of a js engine since the advent of ajex/client side heavy web applications.

Your analogy with Apple is fitting I think, Apple's iPhone raised the bar on customer expectations for smart phones, hopefully Google' Chrome will raise the bar on Javascript performance in browsers to move the web forward.

They just need to release a damned linux version!

</comment><comment><USER17> Normally my friend, I would agree with you.

But with 90 tabs open, 25% of them with heavy JS and the system still stable, Chrome itself very responsive, no mis-rendering of sites so far, flawless import of bookmarks and settings, bookmarklets working out of the box, etc.... I think this one is worth the hype.

To think what Safari or Firefox would be like under such a load, not to mention how it would bring the rest of the OS down with it.....

</comment><comment><USER18> Having an important piece of software that won't crash all the time is a big deal.

Various people tell me that they never experience firefox crashes. Good for them. I do, frequently. And, due to its very design, many bugs in its c++ core are potential crashers.

</comment><comment><USER19> I was expecting this to be a poll.

There has been a lot of commentary on Chrome. I do think it has been too much. I wouldn't say too much hype though. Quite a lot of the commentary has been on the problems with the EULA and questioning the benchmarks.

</comment><comment><USER20> I don't get the hype, it's a cool browser, but this new era thing, defining moment, I'm not sold yet...

one thing I'm still looking forward is local integration, it seems far away a smooth integration between web applications and local machine

</comment><comment><USER21> why the hype? Because it's living up to it. Today while at work, I've been using Chrome. Not because I'm curious about it, but because Firefox 3 is SLOW compared to it. At work I was a lot of JS-heavy websites and apps and I'm just loving it. Reading from Google Reader while having 2 Gmail's open is ... so fast in Chrome

</comment><comment><USER22> Honestly, I'm still confused how the screenshots on google.com/chrome are KDE screenshots (or at least a Windows skin that looks just like KDE), but there's still no Linux distro.

</comment><comment><USER23> next: Google netbook?

It's perfect for Google's client-server model. The only reason they wouldn't do it is if they are happy with what others are doing in the space - such as the eee PC. But Google wants it to be _cheaper_ , because that means more users, which grows the internet market for google.

But as soon as google others aren't doing what would benefit google, out will come the google netbook - it's surely in development already, just as Google Chrome was.

</comment><comment><USER24> It's big, highly relevant news until there is other, more interesting news. It'll calm down in another day, until the Mac/Linux versions come out.

</comment><comment><USER25> the idea of having separeate processes for tabs is awesome. makes you go duh. javascript performance is simply great. bodes well for web apps. but only two gripes. no adblock plugin yet. and a non standard installer (installs in your documents and settings!)

</comment><comment><USER26> It's a big improvement. If they gave me Firebug in Chrome, I'd put a bullet in Firefox. :-P

</comment><comment><USER27> Count your blessings. I think there would have been twice the hype had they released it for Linux and Mac. Most of the hypemakers are on Macs these days, aren't they...

</comment><comment><USER28> Cool and interesting but yes... overhyped.

<comment><USER29> I've not seen Google doing much hyping, just lots of people excited. To an impartial observer, perhaps overexcited, but that's a far cry from over hyped. The whole project has just been rumours for the past x years, and not even very loud ones. Hardly "hype".

</comment></comment><comment><USER30> what's the problem?

at least Google delivered a very nice product

</comment><comment><USER31> Ugh, I definitely think that it's very "overhyped". It can be seen even in these comments, and I thought that HN would get me away from this kind of "Wow, something shiny, it's a new age for computing!" hyperbole.

Google Chrome is certainly a very respectable browser, but it's not revolutionary; it does have some iterative advances, like tabs as processes, but it's by no means some coup d'etat of the current powerhouses.

First of all, V8 and TraceMonkey are competitive and both have barely begun to achieve their potential; Fx 3.1 will be at least as fast as Chrome is today, I'm sure.

Google might be able to whisk away a few snobby/brand-obsessed IE users, or IE users who never gave anything else a chance for whatever reason, but the majority of IE's marketshare (people too afraid to install software, and people who freak out when they have to learn something to use their computer) is going to stick with IE. Anything respectable that steals IE marketshare is great, don't get me wrong, I'm just a bit skeptical that Chrome will see more than 5% stable marketshare anytime soon.

Chrome is missing a lot of Firefox's features. It has a couple that were cut from Fx 3, but overall, I think it provides a worse user experience. You get no extensions, there are few real-world sites where you'd notice the speed increase over Fx 3 (and 3.1 will be on par, and if I understand correctly, betas aren't more than a couple of months off) (you would notice the increase over IE; as my computer illiterate IE-using friend stated, "WOOOOO IT'S SOOO FAST"), and very lacking in terms of extensibility and customization, compared to Fx.

Chrome is a great technical asset, and it's exciting to see Google throw their hat in the ring, because it provides a lot to the community and will be for the benefit of all browser developers. It will push innovation forward, and that's definitely a great thing. Mozilla will graft the best parts into Firefox, Google will do the same, and things will continue on happily, finally with healthy competition again. It's undoubtedly an exciting time in browser development, and frankly, this innovation in JavaScript engines and browsers as a whole is long overdue.

Chrome is a nice thing, but it's not "a new age in computing", or any other such ridiculous hyperbolic statement. Have some perspective, people.

</comment><comment><USER32> As a web developer, I consider Chrome to be the beginning of a new era of online computing. We'll look back at this day and say this was the defining moment. Not that it takes anything away from Firefox at all, but having Google put its stamp on a browser is highly significant.

<comment><USER33> As a mobile developer I feel the same way about Apple - iPhone (with bugs and all) is the dawn of new era, similar to how PC+modem was the dawn of the connected world as we know it today.

These are the most exciting times in recent memory as three new platforms are being born before our eyes: the mobile PC, the cloud and the "web browser 2.0".

<comment><USER9> web browser 2.0?

There has easily been more than 2 major revisions in browser technology (I'm not talking just version changes, I'm talking fundamental changes in ideas)

If I had to quickly disassemble it, it would have been something like.

\- Pre-mosaic times (the internet was a dark and lonely place) = browser 1.0

\- Mosaic, the browser that "popularised" the web = browser 2.0

\- The introduction of Netscape and Microsoft IE and the "browser wars" that followed in which microsoft "won" = browser 3.0

\- Introduction of a major competitor to IE that championed open source movement (Firefox) would have been 4.0

So if my rough timeline is correct, that would make Chrome browser generation 5.0 and to be honest, while it is a great browser so far - it is just too early to call. Remember Active Desktop for IE4 and how revolutionary that was for it's time? It introduced the idea that the web is more than just your browser, It's not even around anymore that's how revolutionary it is.

One could even argue that Safari for iphone should be 5.0 because it took the true web (not the mobile web, and I dont want to argue about flash) into the palm of your hands.

At the end of the day, the market will decide; so while Google does have a strong brand and lots of successes, it also has it's fair share of "failures". This isn't Google hate, I love their stuff, it's just reality.

(EDIT - put in a few additional things)

<comment><USER34> Browser 1.0 = designed to render web pages

Browser 2.0 = designed to run web applications

<comment><USER9> Well then by that definition, Google chrome is still not the first "Browser 2.0" because other development teams have included technologies like Javascript and especially ActiveX controls into their browsers, effectively making them application platforms.

I just would like to reiterate that I'm not a Google hater, nor do I think Google Chrome will fail. I think it's a great addition to the web.

I just don't like all this inane hype that's going around and believe me, tech enthusiasts are about as bad as teenage girls when it comes to gossiping and echo chambers.

Remember when Plurk was the Twitter killer because of Twitter always being down? I think we're still waiting on that one.

EDIT - (fixing 5am grammar errors, I'm sure I missed some)

<comment><USER34> I used the word "designed" intentionally. The 1.0s were not designed for web apps. They work, but that wasn't their intent. This is the first browser conceived for the purpose of running apps. It just happens to be backwards compatible.

<comment><USER9> I'm sorry but I can't drink the kool aid on that one, because it sounds like your implying that other software implementations by other developers before Google didn't "design" their software - which would be a complete fallacy.

Don't get me wrong, the multiple processing is fantastic, faster javascript is great, along with all the other toys that Google have in their browser.

However, all this means is Google does it better than anyone else hands down and that it's going to do fantastic things to further the web. It will push other developers to be better, kind of like how iphone pushed other phone manufacturers to be better... but in both cases that is more or less an advantage of being late to market.

Anyway, the point is that I think you might have swallowed the hype a little bit too much in believing that Google is the first generation of browsers that was "designed" for web apps because it was designed to run them better than the many generations before it.

That would be like saying Chuck Yeager was the first man to do powered flight because he broke the sound barrier first.

The Wright brothers would not be amused.

</comment></comment></comment></comment></comment></comment></comment><comment><USER35> The hype isn't that big. What Google is trying to do might be.

So: no. Reconsider your contrarian status.</comment>


The Science of Politely Ending a Conversation - <AUTHOR> http://www.fastcodesign.com/3038950/evidence/the-science-of-politely-ending-a-conversation <comment><USER2> I think they overly downplay the effectiveness and efficiency of vanishing. I used to work with a VERY polished salesman, who was the king of making everyone feel at home at his events. He was an absolute gentleman. But you knew he would disappear without saying a word at the end of the night. There would be a car waiting for everyone that needed it, but he wouldn't say Goodbye. Nobody faulted him for it.

On the other extreme... I went to a political fundraiser where it was clear the politician worked the room like a, well politician. He made everyone feel important and listened to. After he had done his once-over, he announced, "Thank you all for coming. I apologize for leaving abruptly, I have to go an meet my mom for dinner." I was stunned at how smooth he was.

<comment><USER3> The unannounced exit is also known by the slang terms "ghosting", "Irish goodbye", and "French leave".

I'm not altogether certain that you could place it at a fixed position on the "appropriateness" axis. It would probably depend largely upon the number of people in the social environment, and as such, the one-on-one conversation experiment would be the least appropriate situation in which it could possibly be used.

The politician in your example used _both_ a closing statement _and_ an excuse to disengage, the two strategies with both high politeness and high efficiency. That shows a very high level of social intelligence.

<comment><USER2> I was in awe of him. And thought, "That's how and why he got elected." :-)

</comment></comment></comment><comment><USER4> In the UK we have "right, I'll let you get on" like you are doing them a favour.

<comment><USER5> Also a Lord Vetinari trick from the Discworld universe: "Don't let me keep you."

"When Vetinari considers the meeting ended, he usually dismisses his visitors with the phrase "don't let me detain you." The inherent implication being that he just might if they let him."

<comment><USER6> This begs for clarification. Lord Vetinari considered ruthless patrician and was prepared for this role at assassins school. Without healthy dose of fear and respect this phrase might come off as condescending.

</comment></comment></comment><comment><USER7> On a somewhat related note, when you have the time, you can sometimes yield dividends by _not_ ending the conversation at an early point.

A 10 minute conversation can teach you a lot or even earn your some goodwill.

<comment><USER8> Good point. I think I've gotten to the point of too habitually keeping conversations short. But really, a bit of a longer conversation is probably more healthy and valuable to me than seeing another reddit post or w/e else I'd do with those few minutes.

</comment></comment><comment><USER9> I'm pretty bad at this. I lose patience quickly when people don't get the hint that it's time to end the conversation. In these cases I usually just say I have to go to the bathroom or make a call and don't come back.

</comment><comment> andrey-p Regarding the plot towards the end of the article, what does "efficiency" mean? Surely "vanishing" while the other person is still speaking is the fastest way to end a conversation for the least effort.

<comment><USER10> Based on the other points, I'm guessing it relates to expenditure of time and effort on behalf of the speaker.

Vanishing requires you change location, whereas the more "efficient" _rudeness_ would hopefully make the other person leave instead. Note that "non-responsiveness" is the least efficient, because I suspect the most likely response is for someone to keep questioning why you're not responding, wasting time. With that said, "vanishing" would almost certainly be the most efficient on a phone call, as it's just hanging up.

<comment> andrey-p Fair enough, I was thinking of situations where the conversation wouldn't be held in your own space. In which case, changing location is something you would've had to do anyway.

I just really like the sheer surrealness of ending a conversation by walking off mid-sentence.

</comment></comment></comment><comment><USER11> My success at ending conversations successfully greatly improved once I took formal training in personality types [1] Stick a dozen or two in a room and get a good facilitator to explain how others are. Then you will become so much better at knowing how to end a conversation, or even better, when you should not even bother entering in one. Thinkers; Deciders; Sensors; Feelers, in my learning sessions.

As a boss, I told everyone that under stress, I am a huge decider. Don't waste my time with conversation; get to the point. But under normal conditions, I am extremely verbose.

I think the "science" part of the article is good, as any formula can help when needed. But I sum up what I think my conversation partner is (thinker, decider, sensor, feeler) so I know how to end the conversation.

[1] [http://en.wikipedia.org/wiki/Personality_type](http://en.wikipedia.org/wiki/Personality_type)

</comment><comment><USER12> I used to have long chats on the phone with an EE consultant friend. He was unmarried and lonely and would just never get off the phone. Whatever I said ("well, have a nice day" or some such), he would quickly interject "so tell me what your plans for the holidays are" or some similar opening to keep the conversation going. I found that the only way to end the conversation was to say "I have to go" and he would immediately terminate the call. Weird. He didn't take to email when it became prevalent, so we just don't keep in touch anymore.

</comment><comment><USER13> Aaaaaanyway...

</comment><comment><USER12> This brings to mind a conversation I once had with a smart, young female programmer with a playful sense of humor.

Me: I have a meeting.

Her: yeah, right.

Those were fun times.

<comment><USER14> What does being young or female have to do with it?

<comment> dj-wonk Perhaps the person in question was young and female. :) Does the above comment offend you? It was a story, not a generalization, from what I can tell. (It seems to me that people are too easily offended sometimes.)

<comment><USER15> but why those attributes and not race or height or credit score. not to make too big a deal of it but it's interesting to note which attributes are considered notable/identifying.

<comment><USER16> The examples you've provided cannot be immediately distinguished just from talking to a person.

Additionally, these are two traits that are very identifiable - they're broad definitions that only separate people into two groups. Young implies younger than the OP (the other option being old), female is one of two groups the vast majority of the population fits into.

<comment><USER3> When I go to the beach and don sunglasses to mask my otherwise creepy leering behavior, the two adjectives that most precisely describe the people I ogle are "young" and "female".

And I most certainly do not prefer to stare at Powerpoint/Keynote/Impress slideshows as someone drones on about goals and metrics.

While the preferences that govern attraction are a bit more varied, the propensity for men to enjoy the company of women who are obviously of reproductive age is literally the sole foundation for huge swaths of the advertising industry. It cannot be overridden by political correctness or gender-equality progressiveness. This is such a deeply entrenched fact of human interaction, that one can make jokes about it in the right situation, without any prior setup.

And when someone does, it is acceptable to laugh, rather than to question the premise.</comment></comment></comment></comment></comment></comment>


Ask HN: Can a self-taught developer get hired in AI/ML without a degree? - <AUTHOR> I'm a laravel developer, and do a lot with vuejs/jquery etc.
I am absolutely fascinated by everything going on with AI, and would like to go all in via udemy/coursera and other online resources to learn ai/ml.
Is there likely to be jobs in that sectors for people who do not have a bachelors/masters or phd in comp-sci? <comment><USER2> Depends on what you mean by "jobs in that sector". If you mean doing cutting edge AI research at Google or Facebook, I'm going to guess the answer is closer to "no". Although, "never say never". But OTOH, if you're talking about doing _applied_ machine learning at Lamardcky Furniture Manufacturing in Skelfootville, WV, then the answer is probably very close to "yes, certainly".

The question many (maybe most) companies are going to ask is simply "can you create value?" If you can create value for a company by helping them reduce costs, or increase revenue, or both, you can probably find a job.

Coming at this from a similar position (did not complete my b.s. degree and have only 3 a.s. degrees as formal credentials), I have come to believe there is a crucial extra bit that factors in. And that is _domain knowledge_ as well as general business understanding. You can understand the math behind back- propagation and gradient descent as well as any Ph.D., but if you don't know how to apply that to solving an actual business problem for a particular organization, you aren't going to be able to create much value for them. So if you really want to find a job, you may find that there's value in taking some business classes as well, and choosing a domain to really dive into. This is, of course, assuming you'd be content to chose a role that's more of "applied ML" as opposed to desiring to do cutting edge research.

If you want to do cutting edge research without formal credentials, I don't have any definite advice for you. I believe it's possible to get there, but I'd be entirely speculating as to the details. Well, besides just setting up shop for yourself of course. Then you can research whatever you want. The issue there might be paying the bills if you can't convert what you do to a revenue stream pretty quickly.

<comment><USER3> "The question many (maybe most) companies are going to ask is simply "can you create value?" If you can create value for a company by helping them reduce costs, or increase revenue, or both, you can probably find a job."

Unfortunately, a lot of times companies don't understand that something will add value or make revenue.

</comment></comment><comment><USER4> 95% of "ML Engineers" couldn't perform a matrix multiplication if you held a gun to their head. That's a good proxy for "they don't know what the f they're doing". You'll be fine.

</comment><comment><USER5> Here:

[http://www.fast.ai/2017/03/23/focus-on- coding/](http://www.fast.ai/2017/03/23/focus-on-coding/)</comment>


An ultimately unsuccessful interview - <AUTHOR> http://www.dadhacker.com/blog/?p=1082 <comment><USER2> I can't agree enough with a job interview being a 2-way street. It is extremely important to ask tough questions from your interviewer(s) and make sure that any job offer is a good fit for both sides.

Unfortunately, a lot of the time your interviewer(s) only care if it's a good fit for them.

</comment><comment><USER3> I've started to ask the questions in my interviews that Joel mentions in this article:

<http://www.joelonsoftware.com/articles/fog0000000043.html>

They really helped me size up a company's development culture, walked away from a couple of interviews because of weak responses to those question list.</comment>


Stretching the "peer reviewed" brand until it snaps - <AUTHOR> http://blog.dshr.org/2015/01/stretching-peer-reviewed-brand-until-it.html?m=1

<comment><AUTHOR> It's interesting that the elite journals are more likely to issue retractions. Though I suppose the increased prestige and job opportunities logically lead to more motive to game the system, create sockpuppets, commit other fraud etc.

Does the high rate of retractions show that the system works to some extent though? I wonder what percentage of fraudulent research or faked peer review is actually exposed? I guess we'll never know - one more argument for open access and access to open research data though!

<comment><USER2> If the cost (in terms of reputation) of printing a paper and subsequently retracting it is lower than the cost of rejecting the paper in the first place, a journal is actually better off printing a dodgy paper and then backtracking later. Ultimately these journals are money-making functions of a business enterprise so they'll usually do what they can to maximise profit rather than quality, apparently even if that hinders the science.

<comment><AUTHOR> although I think it's fair to say that not all retractions are the result of fraud. I'm not sure about the ins and outs of this case for example [http://retractionwatch.com/2014/12/26/nature-cell-biology- in...](http://retractionwatch.com/2014/12/26/nature-cell-biology-insulin- paper-retracted-antibody-problems/) but I think it looks like a straightforward revision due to more up to date information. This seems to be a good example of how science should work i.e. scientists posit theory, scientists receive new information and update or revise theory in light of this.

</comment></comment></comment><comment><USER3> I think the problem is with the publishing culture in some disciplines. For an example of a field in which peer review does not appear to be problematic consider finance/econ. In finance and econ you march you paper around to a number of different conferences. At AFA you even get a discussant that presents a critique after you present your work. After evolving the paper based on feedback from the conference circuit you eventually submit to a journal. At this point your work has been (hopefully) widely circulated in the community and is unlikely to be some piece of crap.

Contrast this with engineering. When you submit to a conference it has to be "new" work and you lose the copyright. It is a one shot deal. So, the benefit of feedback you might get on your work is basically irrelevant because that work in no longer publishable.

<comment><AUTHOR> I don't think that's always true however. Check out this example of an economist featured on Retraction Watch: [http://retractionwatch.com/2015/01/05/anyone-want-hire- econo...](http://retractionwatch.com/2015/01/05/anyone-want-hire-economist- retracted-16-papers-fake-peer-reviews/)

That said I do think the idea of a paper being produced after it has been toured around is a good idea - I wonder if it is appropriate for all fields though?

<comment><USER4> It can work for e.g. theoretical physics. But for anything involving serious extermination you've got to take the word of the researchers that they honestly did and reported it. At the most extreme example, experiments done with the CERN Large Hadron Collider are not easily replicated elsewhere at this moment ^_^.

It could also work for the explanation parts of experiment based papers, but, eh, you're allowed to be wrong there. Just publish enough of the data allowing others to double check your interpretation.

It is left as an exercise to the reader what other fields are known for withholding data, and the likely reasons why.</comment></comment></comment>


Bring Order to Chaos: A Graph-Based Journey from Textual Data to Wisdom - <AUTHOR> https://neo4j.com/blog/bring-order-to-chaos-graph-based-journey-textual-data-to-wisdom/ <comment><USER2> This is just a big ad.

<comment><USER3> It might be.

On the other hand is one of the best articles about how to create knowledge using AI techniques.

Maybe you have better examples?

<comment><USER4> The problem with this article is that it is not clear how well those Hume tools perform. It is completely IBM Watson style advertisement, they do something (sentence tagging, entity recognition, ontology enrichment), which is IBM Watson does as well, and many other tools do, but depending on quality of each task, result can be complete garbage.</comment></comment></comment>


Five things your startup can learn from David Plouffe - <AUTHOR> http://marcgayle.com/2009/11/22/five-things-your-startup-can-learn-from-david-plouffe/

<comment><AUTHOR> Interesting ideas Denny. While I agree with the sentiment that sometimes entrepreneurs get caught up in doing too much at first, I think there is something to be said about 'changing the world'. Without having that internal drive to make the world a better place, even in your own small way, sometimes it makes the startup life unbearable. There has to be that external factor that early hires and founders can hold on to (aside from the promise of a huge payday – which doesn't happen for the majority of startups) that doesn't distract them from building their MVP. If your product is executed properly, or quite frankly you get lucky and are in the right place at the right time, you can inadvertently change consumer habits. There are countless examples of this in the tech industry, from Apple, to Google, to Twitter. Generally, I do agree with the notion that the founder/entrepreneur needs to be able to focus on the very micro elements of MVP, or as you so eloquently put it 'nanovating'. Btw, I assume that's what you meant ;)

<comment><USER2> I believe we are in total agreement. My experience is that as an entrepreneur, it is tough to get up in the morning if all I want is to make incremental change. But being audacious and being practical are not necessary mutually exclusive of each other. We need to be both.

As I have written in the past ... "Entrepreneurship is all about creative destruction. Entrepreneurs exist for one purpose and one purpose only which is to destroy status quo, complacency and mediocrity, thereby giving renewal to excellence. But the successful entrepreneurs are the ones who actually respect the environment that they do determine to destroy. Without respect, they can never levitate themselves by the forces embedded in their hearts. Without respect, they can never learn from the mistakes of their elders. And without respect they can never stand on the shoulders of the giants who marched before them."

</comment></comment><comment><USER2> Regardless of your political conviction, there are definitely plenty of lessons that entrepreneurs can learn from our Upstart-in-Chief: product Simplicity, operational Agility, customer Intimacy and financial Leverage (SAIL).

"It's the simplicity, stupid".

Don't try to change the World. Don't attempt to "fly a new engine with a new air frame."

Minimum Viable Product is indeed the key.

If your idea is a new product, don't try to force a change on consumer habit. And if your idea is a new distribution scheme, don't try to use it to introduce a new service.

Don't innovate, nanovate.

Good luck.</comment>


SSH for Fun and Profit - <AUTHOR> https://karla.io/2016/04/30/ssh-for-fun-and-profit.html <comment><USER2> I really enjoyed reading this, you should add an rss feed to your blog, I couldn't find anything to subscribe to.

<comment><AUTHOR> Thanks! I'll try to add one later this week, I've been meaning to :)

<comment><USER3> That would be really great! It's always a pity when this happens:

      - I read a great article.
      - I have a look at the rest of the blog, seeing more interesting articles.
      - I see that the posting frequency is low. [1]
      - I want to add it to my QuiteRSS reader, but there is no Atom/RSS feed.

[1] Which is actually a very good sign! Daily posters are inevitably posting mostly crap, and I'm too tired of such blogs to pick out the cherries. I prefer authors who publish only their cherries in the first place, or at least provide a "cherry-only" feed.

<comment><USER4> There are several services out there that will create an RSS feed out of any web page. They do this by periodically scraping the page's contents for you. [https://feedity.com/](https://feedity.com/) is pretty good; there are others.

</comment></comment></comment></comment><comment><USER5> I really like stories like this where somebody was overly curious about something and instead of just reading about it, he takes it apart and puts it back together to gain the kind of knowledge you will never find in a book/blog post.

<comment><USER3> _> takes it apart and puts it back together to gain the kind of knowledge you will never find in a book/blog post._

Interestingly, the author still worked a lot with the docs (RFCs), not just with the software itself.

I believe this is important for any hands-on activity. Even though the documentation isn't your starting point, and may be too cumbersome and badly structured, sooner or later you should go back to them, now with more specific questions, picking out what you need.

<comment><USER6> I thought it was fairly discouraging that the docs weren't sufficient to get the author up and running with ssh; a lot of seemingly undocumented gotchas popped up.

<comment><USER5> Yeah, I would hope with a tool as critical as ssh the docs would be pretty good. Hopefully the author will contribute and it will get accepted.

</comment></comment></comment></comment><comment><USER7> Another way to help discover how SSH works is to compile your own openssh server, instrumenting it with your own printfs, and see exactly what it's doing. I did this at one point, and it helped immensely to write a (horrifyingly insecure) homegrown SSH client. It was at least a good learning experience.

</comment><comment><USER3> The actual code on GitHub:

[https://github.com/tetrakai/miscellaneous/tree/master/ssh_cl...](https://github.com/tetrakai/miscellaneous/tree/master/ssh_client)

Unfortunately, that was somewhat hidden in a small "here" link near the end of the article.

By the way, I believe to would be preferable to have a separate Git repository for that, rather than putting all mini projects ("miscellaneous code snippets") into a single repository.

</comment><comment><USER8> It's interesting that "The transport protocol doesn't cover who sends their banner first". It'd be good if I could configure my server to keep quiet until the client identifies itself as an SSH client. I run it on an unusual port and it gets scanned frequently. sshguard helps but I'd prefer it wasn't announcing to any client that it is an ssh server.

<comment><USER9> How does sshguard compare to fail2ban?

<comment><USER8> I never used fail2ban: sshguard was simply what I came across first and it was easy to setup and worked as advertised. The Arch wiki states: "sshguard is different from the other two in that it is written in C, is lighter and simpler to use with fewer features while performing its core function equally well."

</comment></comment></comment><comment><USER10> >"none" as my compression algorithm.

Next blog post idea: taking apart how zlib works ([https://tools.ietf.org/html/rfc1950](https://tools.ietf.org/html/rfc1950)) and using that as a built-in compression algorithm. Seriously though great article.

</comment><comment><USER11> Nice.

What first revealed me the hidden complexity of SSH was typing this during a live SSH session:

        ~?

Which show you the SSH supported escape sequences.

<comment><USER12> Note that the actual sequence is 3 characters (newline, tilde, question mark). If you try ~? after anything except a newline, ssh won't intercept it (this is true for all ssh tilde escapes).

Telnet had something similar.

</comment></comment><comment><USER13> "This was a problem, because my initial packets to the server were met with immediate disconnects, and I'd now lost my main means of debugging. I banged my head against the wall for a while, then at the suggestion of a friend, decided to turn the server's OpenSSH log verbosity way up. I bumped the LogLevel in /etc/ssh/sshd_config to DEBUG3, and suddenly I was getting helpful error messages!"

ssh server can be run with -d option for monitoring. It redirects debug messages to stdout.

/usr/sbin/sshd -d

</comment><comment><USER14> I liked reading the code for this - added a Star too.

* Picking some RFCs and then writing a client/server is fun as a coding exercise.

* I had a go at implementing POP3 and HTTP years ago in a MUD / LPC, but HTTP has been done to death now.

* Documentation is also really really good and I like the self-describing code, but have you thought about adding any unit tests i.e. for the algorithms?

</comment><comment><USER15> Author never did say whether the Logjam vulnerability was present.

<comment><USER16> Did you read the link she provided? [https://weakdh.org](https://weakdh.org)

<comment><USER15> No. I assumed since it was prominently mentioned in the opening of the piece, it would be addressed before the conclusion. Sort of the Chekov's Gun principle.

[https://en.wikipedia.org/wiki/Chekhov's_gun](https://en.wikipedia.org/wiki/Chekhov's_gun)

</comment></comment></comment><comment><USER17> But where's the "profit" part?

<comment><USER18> Hireability

</comment></comment><comment><USER19> Meta: the grey text thing which seems to be really popular right now? That's just unreadable. Third time today I inspect-elemented a blog post to turn the text coloring off.

Edit: Finished reading, what a great project! I've looked for something like this before, but ssh documentation never quite contained what I was looking for, let alone providing a simple client to hack with.

Many code snippets look a lot easier than I would expect it to be (e.g. DH KEX looks very simple there), though of course finding out what the correct code is, even if it's brief, takes a lot of effort.

Great writeup and thanks for sharing!

<comment><USER20> Check your monitor gamma and white level using something like this: [http://www.lagom.nl/lcd-test/gamma_calibration.php](http://www.lagom.nl/lcd- test/gamma_calibration.php)

You might be crushing whites, or just have incorrect gamma.

<comment><USER19> Thanks for the link! I've seen the site before but never thought of testing my screen when I got my new laptop.

It's very difficult to tell, though. The gamma varies between 1.9 and 2.3 (roughly) depending on the angle at which I look at my screen. Every time I sit this will be different.

Opening the article again, it also depends where I look: when tilting my laptop back a bit, the text appears darker (even black if I tilt it far enough) but the exact shade differs: near the bottom of the page it's still greyish while the top part is indeed almost black.

Looking on my phone, it's a lot better readable than on my laptop, probably because I look at my laptop screen at an angle and my phone's colors don't change if you look from the far top or bottom.

<comment><USER20> The worst color change I recall seeing on a laptop was the background color Google used to use to identify ads (a pale yellow as I recall). On cheaper laptop screens even the slightest tilt would make it white, making the ads indistinguishable from real results.

If you have something like the Nvidia Linux control panel for adjusting colors, lowering the white level and raising the black level can help compensate a bit. The open source Media Player Classic (or MPC-HC maybe) player also has a nice shader to correct for the vertical variation, but I don't know of any way to apply it to the whole OS.</comment></comment></comment></comment>


GPU Computing Era (2010 / Paywall) - <AUTHOR> https://ieeexplore.ieee.org/document/5446251 <comment><AUTHOR> Although this article is behind the IEEE Paywall, it is a good piece of work that gently introduces GPGPUs to the technical reader.

The concept of thread-blocks, shared memory, and high-speed specialized graphics-RAM applies just as well today in 2019 as it did back in 2010. Today's GPUs are bigger, faster, and more parallel than ever before, but the fundamental model hasn't changed dramatically in the past 10 years.

In the past 10 years: CUDA has gotten easier, more C++ features have been added to the language. "Tensor" operations to accelerate deep-learning have been added. And I guess "ballot" and "cross-lane permute" operations have been added as well. But overall, the concept of using SIMD-cores to run thread-like code has proven to be highly successful.

As such, this introductory article from 2010 is still very relevant.</comment>


Analyzing electric utility data using machine learning - <AUTHOR> https://blog.ai-academy.com/i-reverse-engineered-a-500m-artificial-intelligence-company-in-one-week-heres-the-full-story-d067cef99e1c <comment><USER2> (Disclosure: former Opower engineer)

Opower is most certainly not an 'Artificial Intelligence company'. Opower's foundations are in Behavioral Science, literally applying the results of an experiment performed by Robert Cialdini to electrical utilities all over the world. ([http://www.slate.com/articles/technology/the_efficient_plane...](http://www.slate.com/articles/technology/the_efficient_planet/2013/03/opower_using_smiley_faces_and_peer_pressure_to_save_the_planet.html)). If being a 'Big Data company' is a thing, that would better describe Opower - they ingested massive amounts of utility customer usage data, and from that were able to find similar house holds, rank them, and produce a behavioral effect that worked. It's an impressive feat but not AI.

Also, I really hope "I recreated this AI company in a weekend" isn't the new "I recreated Twitter in a weekend." No, you didn't.

</comment><comment><USER3> I think "recreated a small portion of their core research" would be a fairer title. The current title makes it sound like he's actually built a competitor to the company, when in fact, all he's proved is that basic tech is often an almost trivial part of a company, compared with all of the housekeeping and other busywork required to actually provide a service to customers.

<comment><USER4> I have to add there is zero reverse-engineering here. The main purpose of this article seems to be name-dropping for the 500M company while trying to generate some 'thoughtleader'-cred

<comment><USER5> Yep, "reverse engineering" used to mean something. Nowadays the term is misused just like "hacker".

</comment></comment></comment><comment><USER6> It's a great effort here and I appreciate the post, but I think the title is a little misleading. There's a whole lot more to a company, let alone a $500MM company, than its tech/product. It's like saying you reverse engineered a kettle and now you're Breville. Consider team, brand, adoption, supporting infrastructure/marketing channels/processes/etc etc etc.

I apologise if this is nitpicky, but I think a more accurate description would be "I reverse-engineered a $500M AI company's algorithm in one week".

</comment><comment><USER7> I really don't like the arrogance coming through the writing style, especially given how clear it is the author has at best basic working knowledge of ML.

Never mind the fact that k-means is ML 101 and the $500M company is likely using more sophisticated ones, the fact that he says the following tells me he's just reading tutorials and plugging data into libraries (which is fine but not with this tone of know-it-all writing):

"I played with the number of clusters, and the one that allowed me to get the most significant clusters was 6 (this was a trial and error approach, for brevity I'll report just the final outcome)."

Anyone who has studied clustering knows you would at the very least do a scree plot here. You can defer to intuition but there's more to it than running kmeans and claiming you've reverse-engineered a $500M company.

<comment><USER8> To be fair, he _did_ say that he was just reporting the final outcome. It's unclear exactly what was involved in his trial and error approach or how he judged "significant clusters".

</comment></comment><comment><USER9> Ex-Opower Data Scientist here. Cool to see this done. Just wanted to add a link to the Opower blog post describing the original work this was based on, done by Erik Shilts: [https://blog.opower.com/2014/10/load-curve- archetypes/](https://blog.opower.com/2014/10/load-curve-archetypes/).

</comment><comment><USER10> Posting an outrageous title to get attention, thereby triggering a discussion entirely focused on the outrageous title is such an anti-pattern that we've demoted this post.

Normally we can find representative language in the body of an article to serve as a substantive title, but I tried and came up empty in this case. That can't be a good sign.

<comment><USER11> Unfortunately, this type of headline is _less_ clickbaity than other headlines I've seen recently relating to Data Science/Machine Learning, even on Hacker News. (although in this case, the clickbaityness is more _deliberate_ )

It is honestly one of the reasons I am cutting down on producing blog articles on those topics, because I _can 't compete_ with clickbait-articles-which- peddle-machine-learning-as-magic-when-it-is-not, and it is beginning to get frustrating.

<comment><USER10> Yes, this genre is well along on the hype curve. We may not always be able to assess when articles are doing this but we're definitely open to suggestions for better (= more accurate and neutral) titles.

</comment></comment></comment><comment><USER12> Hi guys, I'm the person who wrote the article.

I perfectly know that the title is an exaggeration, but choosing an headline for medium is a tough job :)

The reason why I chose to call it like this, is not just to get a couple of clicks, but because while talking to companies that are not ML-aware I often get the question: "how the hell does X do that?!?!?", and the answer 80% of the time could be 4 lines of sklearn.

My goal is to spread awareness on the potential of ML among companies: my intended audience was not ML engineers, to whom this article looks more like "I spent 6 days cleaning data, 20 minutes plotting different clusters representations, and the rest of the day writing an article", but the business person that is not fully aware of what it means to use ML today, and to whom it looks like something amazing and extremely valuable.

Does it make more sense now? :D

<comment><USER11> As the top comment on this post ([https://news.ycombinator.com/item?id=13965043](https://news.ycombinator.com/item?id=13965043)) demonstrates, the title is misleading _at best_ , and I do not believe you want to intentionally mislead your readers. Rhetorical smiley faces do not change that.

Keep in mind that clickbait titles do get penalized on Hacker News, as dang notes.

<comment><USER12> I didn't even post it on HN, you guys aren't my target as I explained.

I'm trying to make business execs more eager to experiment ML in their companies, and less afraid about the years of R&D and skynet scenarios they currently relate AI to.

The title was an hyperbole? Yes, but it worked in getting the attention of my target audience. Anyone trying to work as an ML engineer knows that what I did is simple and far from being worth $500M, but should still thank me for spreading awareness on the potential of this technology among who's still scared.

</comment></comment></comment><comment><USER13> Finding problem space in haystack is more important than building solution. Because that would mean founders' know why a solution exists as it exists in problem space and how to mould/pivot it down the line and build company around it.

</comment><comment><USER14> No you didn't recreated anything. That company is worth 500M. Your fun experiment is not.

On the other hand, this is excellent PR for Opower.

</comment><comment> r00t- Woah, talk about a misleading title.</comment>


Aluminum-Induced Entropy in Biological Systems Implications Neurological Disease - <AUTHOR> https://www.hindawi.com/journals/jt/2014/491316/ <comment><USER2> >[Al-mordanted dyes are] in coatings for pharmaceutical tablets and vitamin capsules.</comment>


Voxelstein 3d - <AUTHOR> http://voxelstein3d.sourceforge.net/

<comment><USER2> The development/announcement blog is... interesting. I'm very familiar with the theme of Wolf3D, but I think this guy is an actual Nazi sympathiser.

(nsfw)

[http://voxelstein3d.blogspot.com/search?updated- max=2014-11-...](http://voxelstein3d.blogspot.com/search?updated- max=2014-11-07T19:56:00-08:00&max-results=1)

<comment><USER3> I tried the game for a few minutes. There's a wall in one room with both Hitler and George W. Bush on it. What does that mean exactly? It could go either way dependent on the authors core beliefs. I'm going with snark. After all, the game is about the good guy wacking the bad Nazis.

<comment><USER4> It could be related to this: [http://www.theguardian.com/world/2004/sep/25/usa.secondworld...](http://www.theguardian.com/world/2004/sep/25/usa.secondworldwar)

<comment><USER3> HA! I had completely forgotten about that familial link.

</comment></comment></comment></comment><comment><USER5> What's the status on this project? Last release was in 2008, but the dev blog is still being worked on?

</comment><comment><USER6> I just saw this posted the other day, which you may find relevant:

[http://jams.gamejolt.io/indiesvspewdiepie/games/super- wolfen...](http://jams.gamejolt.io/indiesvspewdiepie/games/super-wolfenstein- hd-now-with-realistic-physics/39194)

[http://gfycat.com/MixedSpotlessBluefish](http://gfycat.com/MixedSpotlessBluefish)

</comment><comment><USER7> No Linux version?

<comment><USER8> The game is built on top of a Windows-only engine, written by Ken Silverman, the lead coder of Duke Nukem 3D.

<comment><USER9> Correction: Ken Silverman was the developer of the Build engine.

Build was the engine used by Duke Nukem 3D and a bunch of other games from the last half of the 90s. He wasn't the lead developer of Duke Nukem 3D. He licensed his engine to 3D Realms (which developed Duke 3D).

</comment></comment></comment><comment><USER10> Rarely a 'remake' feels adding details without compromising the original groove.</comment>


OS X Yosemite Security and Privacy Guide - <AUTHOR> https://github.com/drduh/OS-X-Yosemite-Security-and-Privacy-Guide <comment><USER2> > Don't use Safari. The code is a mess and security vulnerabilities are > frequent, but slow to patch.

Over the last two years, Safari has had half the vulnerabilities [1] as Chrome [2] or Firefox [3]. Security updates are frequent [4].

As to code being a mess... perhaps there's a particularly offensive part of the WebKit code style guidelines [5] that make them less secure than Blink code style guidelines[6]?

[1] [http://www.cvedetails.com/product/2935/Apple- Safari.html?ven...](http://www.cvedetails.com/product/2935/Apple- Safari.html?vendor_id=49) [2] [http://www.cvedetails.com/product/15031/Google- Chrome.html?v...](http://www.cvedetails.com/product/15031/Google- Chrome.html?vendor_id=1224) [3] [http://www.cvedetails.com/product/3264/Mozilla- Firefox.html?...](http://www.cvedetails.com/product/3264/Mozilla- Firefox.html?vendor_id=452) [4] [https://support.apple.com/en- us/HT201222](https://support.apple.com/en-us/HT201222) [5] [http://www.webkit.org/coding/coding- style.html](http://www.webkit.org/coding/coding-style.html) [6] [https://www.chromium.org/blink/coding- style](https://www.chromium.org/blink/coding-style)

<comment><USER3> I don't use Safari, not because of privacy concerns, but because

1\. I hate the address bar how it partially hides the URL

2\. It adjusts colors. Not only for images with an embedded color profile, but many colors defined in CSS are brighter in Safari than in Firefox or Chrome. This messes up my web development.

<comment><USER4> 1\. I agree that this can be annoying at times, but you can disable this. Settings > Advanced > Show full website address

2\. I have no answers for this one, other than to say that I haven't experienced it.

</comment></comment></comment><comment><USER5> This guide has some useful tips (enable filevault2, disable mdns advertise), but recommends wholly disabling most of the usable functions of applications like calendar, finder, spotlight, etc in the name of "security", which is futile considering every single security update for OSX addresses tons of userland and kernel remote-code execution or local r00t privilege escalations[1][2][3], as well as the well publicized thunderstrike[4] family of vulnerabilities which allow for osx hw/sw compromise.

Every major/minor system update (IE 10.10.x, 10.11) will require these tweaks be reapplied as well.

Lets not call using ruby to run curl to install homebrew secure either. Just because homebrew doesn't need sudo doesn't mean it's inherently secure, and the dependency tree of some of the software the guide recommends you install come with their own set of security issues which need to be manually maintained outside of OSX update procedures.

I'm typing this from an OSX machine with a few of these tweaks applied already, and I love using it for my desktop OS -- but if you really need to be this paranoid about security, you shouldn't be using OSX. There are several security-or-paranoia oriented linux distros you can run.

[1] - [https://support.apple.com/en-us/HT205031](https://support.apple.com/en- us/HT205031) [2] - [https://support.apple.com/en- us/HT204942](https://support.apple.com/en-us/HT204942) [3] - [https://support.apple.com/en-us/HT204659](https://support.apple.com/en- us/HT204659) [4] - [https://trmm.net/Thunderstrike](https://trmm.net/Thunderstrike) & [https://trmm.net/Thunderstrike_2](https://trmm.net/Thunderstrike_2)

<comment><USER6> What's the best guide you know for SE Linux as a desktop?

<comment><USER7> You don't need a guide, it just works. If you're installing stuff from rpm (and not from a weird backalley repo) then it all just works.

<comment><USER8> > You don't need a guide, it just works.

It "just works" if the package you're installing has a corresponding SELinux profile. If it doesn't, you're in for a world of "fun" trying to come up with a correct profile.

(I've played with both SELinux and Grsecurity MAC systems in the past. I know that it's not _impossible_ to create these profiles. I also know that it's not infrequently an _enormous_ pain in the ass, and a thing that even experts sometimes get wrong.)

<comment><USER7> If something doesn't have a profile then it runs unconfined. That's simplified, but really does work out of the box unless you do something weird (then you flip a boolean) or very weird (then you create a custom module).

But for a normal desktop user, it does just work.

<comment><USER8> Oh! That's super useful. I stand corrected.

I wonder if grsec's MAC system has grown an equivalent feature in the past four or five years. (If I overlooked the existence of such a thing in grsec, I'm gonna be _so_ embarrassed.)

</comment></comment></comment></comment></comment></comment><comment><USER9> I expect there to be a lot of criticism in this thread. May I suggest that you direct your energy towards the guide by opening an issue or pull request instead. It's a better medium for discussion and there's a chance the guide will be improved, benefiting everyone.

<comment><USER10> Yes please!

</comment></comment><comment><USER11> This looks great. However for a document that is so hyper vigilant about preventing little phone-home-to-Apple behaviors, isn't there some cognitive dissonance in the fact that it recommends installing Google Chrome? What am I missing?

<comment><USER12> The fact that, much like Mac OS, all of the phone-home-ness of Chrome can be turned off (regardless of how much doing so might be more of a threat to you)

<comment><USER13> Chrome sends every URL or key stroke in the URL bar home in the guise of checking if they are search terms, and nothing short of not using Chrome helps that.

In addition, installing Chrome created a situation where every few minutes something is connecting to Google's servers. I disabled updates, uninstalled Chrome, and removed everything Google, followed instructions for removing the updater - and something is still pinging Google every few minutes.

If there is a way to shut these off, then the author should detail this, as much as he has detailed how to fix Apple's phone-home behaviour.

<comment><USER12> Nothing short of _unticking the box_ you mean: [http://imgur.com/If9Oazj](http://imgur.com/If9Oazj)

The amount of bad faith people ascribe to basic usability functions utterly astounds me.

<comment><USER14> > The amount of bad faith people ascribe to basic usability functions utterly > astounds me.

I think most of it comes from how Google (and the industry in general) has evolved. There was a day[0] when things were labeled clearly and the default behavior wasn't to vacuum up as much data about users in the name of basic usability functions.

The amount of trust people have in companies to keep their private information safe from prying eyes is what's truly astounding.

[0] [http://images.devshed.com/sc/stories/Google_Desktop_Search2b...](http://images.devshed.com/sc/stories/Google_Desktop_Search2b/Desktopadvanced.jpg)

<comment><USER15> For me, it's mostly because I believe that bad press is enough of a motivator for companies to not turn completely evil. We know the damage that Snowden did to the public image of the NSA. Imagine the NSA being a publicly traded company, it wouldn't have been pretty.

I'm sure some company will turn evil and abuse the trust that their users have given them. (I assume it will be Facebook.) But I also, maybe naively, assume this will not impact my life in a significant way.

</comment></comment></comment></comment></comment></comment><comment><USER16> Please do not enable "stealth mode" in the ALF. This violates applicable standards, impedes system and network management, and provides no additional security (as anyone with nmap can readily verify). Hosts are required to respond to unicast ICMP echo requests, period [0]. No exceptions.

[0] [https://tools.ietf.org/html/rfc1122#page-42](https://tools.ietf.org/html/rfc1122#page-42)

<comment><USER17> "Impeding system and network management" is potentially a real argument (though one most OS X users, whose machines are not rightfully overseen by any network manager, might dismiss).

But the appeal to IETF standards that brackets that argument, with it's "period, no exceptions" language, is a bit galling. Who cares? The IETF has made all manner of silly rules in its history. Why isn't this simply one of them?

<comment><USER18> Totally agree. It's fair to realise that there are consequences to deviation from standards, but (like many people) I don't consider the fact that IETF makes something a standard to be a binding requirment on me to do something on my boxes.

For one thing, the standard was built for an extremely different internet than the one we have today.

</comment></comment></comment><comment><USER19> Out of curiosity, does the recovery-mode download verify the integrity of the downloaded image (either with HTTPS or with some sort of static signature check)?

</comment><comment><USER20> Author of AutoDMG here, and since imaging is my day job I was happy to see that the article starts with a solid introduction to deploying OS X. However I'd do a few things differently:

* It's best to build the image using a full installer of the latest version of OS X downloaded from the App Store (currently 10.10.5 14F27). Do not build a 10.10 14A389 image and apply the combo update to it as updates are meant to be installed on live systems and occasionally causes headaches.

* Avoid including extra packages on the image, it'll only make it a pain to maintain and update. Also many packages are badly written and don't install correctly (see [https://github.com/MagerValp/AutoDMG/wiki/Packages-Suitable-...](https://github.com/MagerValp/AutoDMG/wiki/Packages-Suitable-for-Deployment)).

* Rather than installing packages into the image you can include them but install them on first boot, e.g. with Outset: [https://github.com/chilcote/outset](https://github.com/chilcote/outset)

* Even better, it's easy to set up Munki for software management, this way you can keep your machines updated too: [https://github.com/munki/munki](https://github.com/munki/munki)

* If you build your image with AutoDMG a recovery partition should be included in the image and created automatically when you restore with asr. If for some reason it's missing you can create a package that will create it for you (again using the latest OS X installer): [https://github.com/MagerValp/Create-Recovery-Partition-Insta...](https://github.com/MagerValp/Create-Recovery-Partition-Installer)

Now on to reading the rest of the guide... :)

Edit: reworded

</comment><comment><USER21> gotta love how it gives out hashes for the OSX install image, and then ignores all that nonsense when installing homebrew with shellcode directly from github.

<comment><AUTHOR> Would you mind explaining why you think that's a contradiction? The "shellcode" is downloaded over SSL from a very popular repository on github. I'm genuinely interested in your alternative approach to securely downloading and installing programs from source, and why you think this way is problematic.

<comment><USER22> You should publish the hash of the script, then the user should download it to disk, verify the script and then execute it. The same as would apply to any binary download - if a binary can be compromised so can a shell script.

Alternatively you can code review the script before executing it, which is a plus.

<comment><USER23> Hashes are useful when software is hosted on third-party mirrors or CDNs. If the software is hosted on the same server as the webpage about it, then anyone in a position to replace the download can and will replace the hash as well.

<comment><USER24> Better solution is to use signed software packages. Compromising website is more common than compromising developer private keys.

<comment><USER23> How are you going to trust the public key?

HN doesn't seem to like Apple/Microsoft as trust brokers, and absent a trusted CA I don't see how this makes the problem any better.

<comment><USER24> You have to trust someone to build trusted chain. Trusted CA roots from SSL are good practical choice IMO. May be NSA or China government theoretically could crack that setup, but for other adversaries it would be much harder.

</comment></comment></comment></comment></comment></comment></comment><comment><USER25> anybody knowledgeable could comment on the list of disable services and agents? I can't find a good site discussing what each service/agent is and what it is for

</comment><comment><USER26> You're worried about security, but you install homebrew?!?

<comment><USER27> even better, let's just execute the random contents of a URL with a Ruby interpreter. Pretty sure curl's -f will suppress any SSL errors you'd receive as someone MITM's you...

<comment><USER28> This is a commonly-repeated cargo-cult security trope: if you're going to run arbitrary code from Homebrew, your risk exposure is no different whether you download the installer and run it as two separate actions or one combined command.

The option you're thinking of is -k — -f simply tells curl to fail silently on errors, not ignore them:

[http://curl.haxx.se/docs/manpage.html#-f](http://curl.haxx.se/docs/manpage.html#-f)

</comment></comment></comment><comment><USER29> "Use of the OS X OpenSSL libraries by apps is strongly discouraged." [https://developer.apple.com/library/mac/documentation/Securi...](https://developer.apple.com/library/mac/documentation/Security/Conceptual/cryptoservices/GeneralPurposeCrypto/GeneralPurposeCrypto.html)

OK, so why even include it then?

</comment><comment><USER30> That's a long list. Is it commonly believed that out-of-the-box Ubuntu is more secure than OSX?

<comment><USER31> This isn't exactly an answer to your question, as I do not know what the common belief could be and, as well, without doing serious research through the exploration of blogs, social networks and such to determine what said belief could be, it would be impossible to give a definitive answer.

That being said, I don't think Ubuntu is any more or less secure than OS X.

This is just a personal opinion.

</comment></comment><comment><USER32> Cert removal does not seem to work on El Capitan. Maybe because of rootless?

<comment><USER33> I'm not on El Capitan, but does disabling them in the GUI work (Trust: Never)? I think that's better than removing them anyway, as it seems to persist across OS upgrades.</comment></comment>


Daily Mail Article Generator - open-source-ux https://daily-fail-generator.herokuapp.com/ <comment><AUTHOR> This one got me bursting out laughing:

> How using Facebook could increase your risk of sacrificing goats to a gilded > image of Ken Livingstone

This has a limited number of combinations here and it is possible to get the same title. So it is not entirely unique here but interesting project, although there are titles that some may find 'offensive' here.

You should probably create one for theregister.co.uk tech section next. Both of them take nonsensical titles to a new extreme.

</comment><comment><USER2> That moment when you're not sure if it's a fake or original. Awesome work!

</comment><comment><USER2> At least it's the same content without the 87 advert iframes and trackers ;-)

</comment><comment><USER3> This flood of eating babies should terrify us all

Eating babies is everywhere, trickling down into all corners of society, an unstoppable lava of lust wherever you look.

"It seems that eating babies is becoming more and more common", said a hardworking family. "Frankly I think this is all the fault of Jeremy Corbyn fans and minimum wage workers".

The fashionable thinking is that eating babies is harmless; eating babies is good for us. But this is not the case, as eating babies will ultimately lead to being foreign and suspicious looking, and that's just not how we do things in Britain.

</comment><comment><USER4> > Terror expert Ian Dunkin-Donuts has analysed the phenomenon in a new book > which we certainly aren't plugging although it is available from our > bookshop for just £7.99; a fantastic 1.7% discount.

Too funny. Nicely done.

</comment><comment><USER5> > Council house dwellers made no comment about the accusations when we didn't > ask.

</comment><comment><USER6> She added "As it turns out reading the works of Karl Marx is almost completely identical to cancer, in how it affects the balance of our chakras</comment>


Mobile apps overtake PC Internet usage in U.S. - <AUTHOR> http://money.cnn.com/2014/02/28/technology/mobile/mobile-apps-internet/index.html <comment><USER2> Alexa lists Wikipedia as the 6th most popular site in the world ( [http://www.alexa.com/siteinfo/wikipedia.org](http://www.alexa.com/siteinfo/wikipedia.org) ). Its web server logs are more open than the five sites in front of it, AFAIK.

The January 2014 web browser report has - [http://stats.wikimedia.org/wikimedia/squids/SquidReportOpera...](http://stats.wikimedia.org/wikimedia/squids/SquidReportOperatingSystems.htm)

23.24% of requests from iPhones 10.94% of requests from Android devices 10.48% of requests from iPads

Not over 50%, but fairly close when totalled, 44.66%.

This is just one of many possible data points, of course. But most data I have seen over the past few years has pointed toward the continuing rise of mobile devices.

<comment><USER3> 9 out of 10 linux devices that accessed wikipedia were Android!

</comment></comment><comment><USER4> And the word "app" seems to have taken over the world.

</comment><comment><USER5> comScore data on "time spent accessing the internet" \- I'm not saying this isn't true or part of a trend, but let's not treat this week as some watershed moment in internet history. There are a lot, a _lot_ of factors here and the terms - "time," "spent," "mobile," "pc," "accessing," and "internet" are not exactly well defined here.

Is it time spent if my phone spends 20 seconds downloading a new version of the app in the background? Does the internet include app stores, or P2P? Is it access when I didn't initiate the connection, didn't notice it happening, and didn't care when it finished, like a Chrome update?

Is it "mobile" if it's a phone or tablet — even if it's on home wifi? What about laptops using cell dongles? What about embedded, always-on devices?

Not that you can't make good statements on this stuff or make a good case based on this and that data, but this little nugget, apps overtake pc internet usage, just seems... meaningless.

<comment><USER6> > just seems... meaningless.

Not really. I'm currently focusing on shopping experiences and just showing this trend will help me 'open the eyes' of retailers. A lot of local businesses have old websites and still try to 'fight' mobile use in their stores instead of catering to it.

<comment><USER7> So to sum up the conversation so far -

A: This is not a well founded number and doesn't really tell us much B: But I can still use it to sell my stuff!

Sorry to be snarky, but your response doesn't really contradict the OP's statement that the data point is meaningless, just tells us that it's useful to persuade people who probably don't have a great grasp of the area anyway. Any number of meaningless data points could be useful for that!

<comment><USER6> No worries. This is reported on CNNMoney. To retailers, that is big. It's just one point in a presentation of me trying to convince people to adopt mobile and local in to their UX Strategy.</comment></comment></comment></comment>


Felicia Day's five things learned in 2010 - <AUTHOR> http://feliciaday.com/blog/five-things-about-2010 <comment><AUTHOR> I thought the list was applicable to doing startups as well. Sometimes, these are things that you don't really realize what people are talking about until you experience them yourself.</comment>


_why's site updated again - <AUTHOR> http://cwales.github.com

<comment><AUTHOR> The new file has the message: "This thing will open in two days. Which means it isn't open right now. Sorry, it just isn't."

</comment><comment><USER2> You guys really need to move on

</comment><comment><USER3> Does anyone know when this changed? You might be able to figure out his timezone based on the time given on the page.

<comment><USER4> Why is knowing his timezone important?

</comment></comment><comment><USER5> Only seeing "Public Print Queue SPOOL/PRESENTLY 2013-04-16T23:04Z" right now.</comment>