Little-Known CSS Facts - <AUTHOR> http://www.sitepoint.com/12-little-known-css-facts/

<comment><USER2> A nifty little trick regarding #5:

You can create elements that maintain their aspect ratio using width:100% and padding-bottom:100%. Unintuitive, since you wouldn't expect padding-bottom to be based of the width.

[http://stackoverflow.com/questions/1495407/css-a-way-to- main...](http://stackoverflow.com/questions/1495407/css-a-way-to-maintain- aspect-ratio-when-resizing-a-div)

</comment><comment><USER3> This article does a great job reinforcing the fact that the w3c has made an absolute mess of the css spec, and that browser vendors continue to implement crap. It's disheartening at best to think about css. I say this as I am wrangling YASCI (yet another stupid css issue).

<comment><USER4> Sadly, [http://giveupandusetables.com](http://giveupandusetables.com) is no longer up, because I always liked pointing to that.

The amount of time we spend fighting with CSS to do things that are _simple_ is insane.

The web is not a well-designed platform. It grew organically out of a document system under the stewardship of a million browser developers with no leadership, and it shows. It's a series of hacks upon hacks upon hacks that only make a reasonable, decent computing platform by the combined might of the entire software industry making tools and frameworks and JavaScript optimizing compilers and whatnot for it.

<comment><USER5> Client-side web technologies are rotten and ill-designed, a mountain of patches and inconsistencies. That's why it's so painful to see people try to shoehorn JavaScript everywhere just because it's the unfortunate status quo.

</comment></comment></comment><comment><USER6> I thought the first one about the color property seemed pretty obvious and fundamental. That's the whole "cascading" thing! But, if you learn CSS in bits and pieces, it's certainly something that's easy to miss.

Positioning is another fundamental topic that is hard to learn without really taking a close look. It's not glamorous or new, but I think a lot of people (myself included, until recently) don't fully understand how positioning works. A List Apart has a good article on the subject: [http://alistapart.com/article/css- positioning-101](http://alistapart.com/article/css-positioning-101)

In the same vein, another good topic is selectors. They're quite powerful, but if you only ever look at simple styling examples, you'll never really be exposed to their breadth and power. Check out the docs: [http://www.w3.org/TR/CSS21/selector.html](http://www.w3.org/TR/CSS21/selector.html)

</comment><comment><USER7> I haven't done CSS in a while & my site is pretty lame, but:

There's a CSS clip property? And a collapse toggle? holy shit.

This is really cool, thanks!

</comment><comment><USER8> Anyone else seeing the same codepen example for every number?

edit: hmm, a few refreshes fixed it up.

<comment><USER9> For some reason, that happens occasionally. Seems to be a CodePen bug, but it does fix if you refresh, as you mentioned.

</comment></comment><comment><USER10> border-image isn't used at the moment, because it's out of fashion, but one day perhaps it will be back.

<comment><USER11> and hopefully a css native <blink> tag !

<comment><USER12>
        text-decoration: blink;

[https://developer.mozilla.org/en-US/docs/Web/CSS/text- decora...](https://developer.mozilla.org/en-US/docs/Web/CSS/text- decoration#Value)

(Doesn't actually seem to work in Chrome. Here's a CSS animation alternative: [http://stackoverflow.com/questions/13955163/imitating-a- blin...](http://stackoverflow.com/questions/13955163/imitating-a-blink-tag- with-css3-animations) )

</comment></comment></comment><comment><USER13> These all seem pretty basic CSS facts.</comment>


Is Firefox under performing because of its Rust powered engine, Servo? - <AUTHOR> Sorry this might sound like a rant but I am really disappointed in Firefox for the past couple of years. Firefox used to be my go to browser until a few years ago when the problems started appearing. On my old laptop with 2nd Gen i7 processor and 4gb RAM, I used to have more than 100 tabs open in all windows combined and Firefox could handle them without a hiccup(granted many sites were not that heavy 3-4 years ago but still compared to Chrome Firefox was miles better). Chrome always had a problem handling a lot of tabs(would show problems even at 30-40 tabs). But now I generally use a much powerful laptop(6th gen i7, 16gb ram, 980m graphics card) and Firefox's performance is just terrible. The element inspector is a joke compared to Chrome and completely unusable. While I can go from one element to another in Chrome very easily, in Firefox the jump is very slow and choppy and until a few versions ago, highlighting the nodes in the element inspector would not even work everytime. Now even when I have 10 tabs open in Firefox, it briefly shows a spinning wheel when I go back to a previous tab. Chrome's performance is much better now compared to Firefox. So, I am wondering if its because of the Rust powered Servo browser engine that derailed the performance of Firefox? I know Hacker News loves Rust dearly but lets be honest it has its share of warts and bugs. Will we ever get to see the once great Firefox in its full glory again? In hindsight, does the Firefox dev team regret using Rust instead of C++ for their browser engine? <comment><USER2> No it isn't because Firefox is not using Servo as its browser engine. To elaborate, it has been using a Rust component called Stylo to calculate CSS values for a little over year now. Stylo originates from Servo. If you switched away from Firefox a few years ago because of slowness, it has nothing to do with the Rust components.

</comment><comment><USER3> The only time I've experienced something like what you are mentioning is when the browser is bogged down by a lot of addons/plugins, but I've also experienced the same thing with Chromium based browsers

<comment><AUTHOR> I see...but I don't have any addons installed (because I generally don't use Firefox these days).</comment></comment>


Replacement of YC backed Kimono labs - <AUTHOR> https://www.datascraping.co/ <comment><AUTHOR> Hello Hackers, I'm Vikash the Co-Founder of Online Scraper. I'm super excited to have been hacked today.

I started DataScraping.co around a year back by launching the desktop app "Data Scraping Studio" as a point and click CSS selector scraping app with amazing capability to run multiple agents simultaneously and over 5000 users downloaded the application and uses now in their business.

Over the time we noticed, one of the major ask from community was the online solution and REST API. To integrate and use the scraped data in existing system without installing the desktop app or to use across operating systems. And we keep recommending our user to try (YC Backed) Kimonolabs, but then suddenly they shutdown their platform on March, 16 leaving 100k+ users leaving behind on short notice.

Today, I'm very excited to launch the online web scraper with the same capabilities and power of cloud along with REST API to get the same Kimono(or even better) experience back. Go to our website and signup to get 1000 free pages credit every month to test the feature and you can go PRO anytime if you like it.

I'll be available all day to answer any comments, feedback you have, really looking forward to it!.</comment>


Hey Google, Gmail is Awfully Slow - <AUTHOR> http://owocki.com/2011/07/02/hey-google-gmail-is-awfully-slow/

<comment><USER2> I've noticed that since getting into G+ my Gmail tab in safari constantly has the spinner showing. (OS X) I suspect the new status bar at the top is doing some aggressive polling or long-polling to get notifications.

That said, I have not experienced any of the problems the author describes, and I think it's telling that he does not mention his system specs, or the browsers effected, or his network conditions. Maybe he's behind a firewall that munges the Accepts-Encoding header, defeating gzip.

<comment><AUTHOR> I'm on a state of the art macbook air, and the problems described occur on every modern browser (chrome, firefox, safari)), and they occur on every wifi network I connect to (Cable, DSL. No firewall.

</comment></comment><comment><USER3> Didn't some one post something similar last year(?) and it ended up they were getting chucked into the wrong server pool or something and someone at google fixed that?

<comment><AUTHOR> if you have a link, i'd love one.

<comment><USER3> not the one i was thinking of, but i found this: <http://news.ycombinator.com/item?id=1386329>

</comment></comment></comment><comment><USER4> i'm using > 3GB of space on my account. often times i notice that a mail takes forever to be sent. i'm using a macbook air and a 3.1MBPS connection, no firewall

</comment><comment><USER5> gmail is the fastest webmail from my place

<comment><AUTHOR> How many conversations in your gmail do you have?

<comment><USER5> > 10000</comment></comment></comment>


Ask HN: Please review my Twitter dating app ;) - <AUTHOR> http://plentyoftweeps.com/

<comment><USER2> It should have a section that explain how it works because I do not understand how does it works. I have not joined because I simply do not understand. Screenshots, video and some explication text would be a good start to have people sign-up.

<comment><AUTHOR> By the way daok, did you notice the "Learn more" link? Did you click and read that and find that page not useful enough? Or did you not notice that link at all?

Just trying to get an idea of if that link is visible but the info inadequate, or if the link is not even noticeable at all.

<comment><USER3> I think it needs to be visible like buttons are

<comment><AUTHOR> Noted, thanks.

<comment><USER4> I'd suggest changing it from a text link to a colorful call to action button. Try testing "Learn More", "How it Works" and "Take a Tour". You get the idea.

<comment><AUTHOR> I just put a new button up now. Better or worse?

<comment><USER5> I hadn't seen it before you put that button, but it's the first thing I've clicked on, very visible.

At first I didn't get the link to twitter, why you would use it to identify users... but it is actually a good idea. As opposed to a made-up page on a dating website that is just full of random claims, your users have a chance to show what they are about and what their recent life has been about. I think this is very valuable.

Just a few things. Your home page is now full of men. You might want to tweak your display to get 50% of each sex. Also, the central and right column display the same thing. You could have the most recent events in the middle and the newcomers on the right only, for example.

One last thing: Customize you link colors. I'm also not a big fan of your color scheme, but that might be just me. "How it works" and "FEATURED" are a bit hard to read because of low contrast. Look at the color schemes of match.com and plentyoffish.com: light blue, light green, and pink. It's a good thing that you're different, but there might be a common reason behind their similar choices.

Your "get started" and "how it works" buttons have text-decoration: underline on hover, you might want to remove that to match the top tabs that don't.

<comment><AUTHOR> Great feedback. And glad that the button is more visible now. Thanks thamer.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER6> A little love from al3x: <http://twitter.com/al3x/status/6093589335> "Fun fact: I was thinking about building a dating site before I joined Twitter. Neat to see projects like <http://plentyoftweeps.com/>

</comment><comment><USER7> Use AB testing, try a bunch of minor, but easy-to-do changes and evolve the product over time. This works, trust me.

<comment><AUTHOR> Doing that as we speak. :)

</comment></comment><comment><USER8> I'm impressed with the design =). I like how the right column is used as a per page FAQ.

A few minor suggestions:

\- Consider merging or ditching one of the two taglines. The site becomes easier to read if the eye doesn't have to jump around.

\- When a user is not signed in, there are 3 buttons in the nav bar which lead to twitter login. It may be a good idea to remove them or add example content for guests.

\- The "Get Started" link is really a "Log in" link. This could be confusing.

All in all, great work! Especially for a little over two months development time. I'm curious, how are you marketing the site?

<comment><AUTHOR> Wow, great feedback, thanks csytan! And I think you just gave me an idea for what to do about those 3 navbar buttons before the user has logged.

Marketing it organically right now. Talking to bloggers, gradually spreading our PageRank wings, etc. Have experimented with some paid advertising, but it's pretty expensive for a dating site.

</comment></comment><comment><USER9> The newest members list is 100% male :\

</comment><comment><AUTHOR> Been scratching this itch of mine for about 2.5 months now. Aiming for the easiest-to-use dating site UI on Planet Earth. Constructive criticism welcome.

</comment><comment><USER10> _"Newest Members"_

Is there anything stopping the location having a hyperlink linking to a page with people by location? I like the authorisation using oauth - the simplest way for existing twitter users to sign-up. Do you think it's worth adding your own authorise system or are you sticking with using Twitter authorisation?

<comment><AUTHOR> Good point in linkifying city names. (There and other places, probably.)

Sticking exclusively with Twitter for now, though may consider making it easy for non-Twitter users to jump right in too (like Zoosk makes it easy to join without using FB.)

<comment><USER10> _"... Sticking exclusively with Twitter for now ..."_

Great strategy. I noticed @joshu and <http://a.tinythread.com> use this idea making authentication simple without the login hurdle.

</comment></comment></comment><comment><USER11> For what it's worth, the first thing I thought of, from a naming perspective is "Tweeps" is very close to "Creeps." It was a very quick jump from reading "Plenty of Tweeps" to hearing "Plenty of Creeps" in my head.

<comment><AUTHOR> Heh, funny, you're actually that second person that has told me that.

</comment></comment><comment><USER12> The thing i liked most in the site

"Conceived Aug '09. Launched Oct '09. "

Great Start Guyz..Now Start Iterating..

<comment><AUTHOR> Oh yeah. Iterating my brains out to the tune of about 2-3 releases a day right now. :)

</comment></comment><comment><USER13> Have you spoken to a trademark/copyright lawyer about any potential infringement and/or brand confusion claims that PlentyOfFish.com will inevitably bring up against you?

<comment><AUTHOR> Thought about it, and have no reason to feel concern. In the worst case, the expression "plenty of fish [in the sea]" was around long before the Intertubes, let alone the PoF website.

<comment><USER14> Repeat after me: Trademark != Patent

It doesn't matter at all that the phrase was in use before. What matters is that you are offering a service that is similar enough to cause confusion. People could reasonably think that you are associated with Plenty Of Fish, because the name is similar and both your services involve internet dating.

I'd seriously consider changing names. They make several million dollars a year and trademark law pretty much requires that they vigorously defend the mark.</comment></comment></comment>


Facebook Connect on YouTube - what does it mean? - <AUTHOR>

YouTube is using Facebook Connect now. Discuss. <comment><USER2> Sounds like some form of coopetition: <http://en.wikipedia.org/wiki/Coopetition></comment>


Tamagotchi Tech Specs Collection - <AUTHOR> http://tamagotch.org <comment><AUTHOR> Hi Hacker News,

Author here. I was very recently inspired by this 29C3 talk [0] by Natalie Silvanovich about Reverse Engineering Tamagotchis (which was shared here back in the day [1]), so I decided to create a website to document how Tamagotchis work, from a technical point of view. It is still on an early stage, I'm happily accepting contributions.

Admittedly I'd have never thought this subject would've been that interesting, I'm finding out many projects out there that fascinate me [2].

Hopefully some of you enjoyed the talk too and will find tamagotch.org useful. Feedback is a gift, I'd appreciate hearing your comments!

[0] [https://www.youtube.com/watch?v=c4PkcZScBV8](https://www.youtube.com/watch?v=c4PkcZScBV8)

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

[2] [https://news.ycombinator.com/item?id=10684482](https://news.ycombinator.com/item?id=10684482)</comment>


Ask HN: With third party cookies going out what happens to analytics companies? - <AUTHOR> With all the major browsers blocking third party cookies, what will happen to analytics, A/B testing, Push Notification and many other companies after 2 years ? <comment><USER2> It isn't hard to go first party, either by own collection or proxying/forwarding. I still parse server logs for analytics since it's performant and non-invasive.

I'm kind of surprised CDN's aren't bigger in analytics, I think analytics would be a huge feature (and revenue source) for the likes of Cloudflare.

Speaking of CF, implementing proxying/forwarding for third-party analytics via CF Workers is easy.</comment>


Remote work: 6 months later - <AUTHOR> https://tailordev.fr/blog/2016/11/18/remote-work-6-months-later/ <comment><USER2> _it is definitely great to meet in person, to shake hands, grab a coffee together, etc. but what is the value, professionally speaking?_

Years of socialization training stemming from childhood to gauge whether it's really worth interrupting people. I do enjoy the opportunity to do remote work, but even in the office, I'm finding an unstated expectation that I should always have a second pair of eyes on my slack notifications. It's not really consistent to praise the elusive "in the zone" state where developers get their most productive work done, and simultaneously expect that they should break what they're doing to bucket the importance of every little IM. The need to walk over to another person when you have something important to say, and use your human senses to determine whether this person should really be distracted for what you think is important at the moment puts the onus and effort of distraction on the asker where I think it best belongs.

<comment><USER3> I work at a 100% remote office. We don't use Slack, or really anything other than Google hangouts. It is pretty easy to just say "Got a sec?", as you would in person. Then type, call, share screens, whatever, when you both have a moment.

It may seem different on the surface, but it really is the exact same communication as you would have in person... you just need to ask. And much of the time, real-time responses aren't truly necessary... so you can just IM someone a question, and know they'll get back to you when they can.

<comment><USER4> Google Hangouts is the worst. You can't open a named room with the same people as another room (it auto-merges) and the window constantly resizes itself. Not to mention the complete lack of useful (and wasteful) addons and bots.

</comment></comment></comment><comment><USER5> I switched to working remote professionally 1 1/2 year ago and worked 1 1/2 year remote on private projects (Firefox committer, university projects) before that.

I make about 20% more money (before tax) than on my last job.

I save 1h every day on commuting, which I had to do on my last job.

I buy my food in my local store, which is much cheaper than buying food in the city.

I have my "own" office, without any people talking, getting sick, etc.

I probably could improve things a bit, by moving into a cheaper city, but overall I'd say, remote work has made my life much better.

<comment><USER6> I've been working remotely for 7 years now. Do you ever miss contact with other people? Fun in the office, interesting conversations, etc.

<comment><USER7> Ive been working remotely for almost the same time as you. I do miss some of the interactions but I've replaced them with connecting with other tech folk through social media and going to local meetups. Almost as good.

<comment><AUTHOR> There is one thing we did not mention, and I'll likely blog on it later this year: being remote does not mean (for us) working at home or even working completely "alone".

For instance, I work in a co-working space where other co-workers are either remote or freelance. I chose a co-working space that is not IT-specific, which is even better. So I have sort of colleagues there, we discuss about many things, sometimes about our respective jobs/works, but most of the time about life in general.

<comment><USER5> Yes.

I work 70% of my time at home and 30% where I just happened to be :)

But I got the best equipment (table, PC, chair) at home, so I prefer to work from there.

</comment></comment></comment></comment></comment><comment><USER8> It's mentioned in the "myths about remote work" article that's linked but I think for startup-y kind of things social/power norms kind of force you to not work remotely for at least a decent stretch of the time.

o/~ Move to SV, move to SV, move to SV sure there's some poo on the streets but...move to SV. o/~

<comment><USER9> I run a 16 person 5 timezone startup cofounded in the valley. I moved to asia from SF. The best thing about this is lack of "startup-y things". All of those things are huge distractions to getting things done.

Many companies run remote fine. Schedules allow people to be home with their kids when needed, no commute over head for most. Emphasis is on self management. Communication is async. We have 1 stand up a week.

<comment><USER7> Wow 5 timezones. That's gotta be pretty tough. Can you tell more about it?

<comment><AUTHOR> Yes I'd be interested to hear more about that setup too!

<comment><USER9> Basically all of us are async. A few of us in the bay area,a few on the east coast, 1 in australia, 1 in eastern europe, and a few in japan/korea.

We have 1 weekly standup at 3:00 PM PST which is ~8am Japan Time (where I live). All of our messaging is async. Most people manage themselves. Tasks tend to be longer sprints.

Half of our team has kids. Work is more independently scheduled. We all collaborate asynchronously.

We use gitter for all of our communications. The reason for this is customer support, user support, team chat, all in 1 place. It works fairly nicely.

All of our communication is remote first. This means most things happen via text or hangout.

Our business development is split in 2 main time zones. "Asian timezone" and "US timezone". Many of us fly.

Marketing material gets cross pollinated across language and time zone via 1 shared folder. (Language is important due to selling in japan,korea,china, and parts of the US).

I usually come back to the US every few months for conferences to try to keep touch.

I also get on a call every other day or so with my cofounder during his afternoon and my morning to make sure things stay in sync across time zones.

We started as 2 people in San Francisco.

<comment><AUTHOR> Thanks for the reply and all the details!

</comment></comment></comment></comment></comment></comment><comment><USER10> Yeah working with people in different timezones definitely comes with even more challenges. I've been working with a 13-hour time difference with my co- founder on our startup called "The Remote Trip" for three months now (I'm working from Thailand while she's working from Costa Rica). The best tool we've used so far has definitely been Trello, it's so easy to keep track of each others work activities and to ask/answer any questions (that's a benefit from working with such a time difference: you leave a question late at night and its answered the next morning!). Next to that, we use Skype for elaborate weekly calls and Google Drive as it is so useful for working in docs simultaneously (plus I love the autosave function). We now also have two additional team members, one from the USA and one from Germany, and although time differences are a challenge - with the right tools and a commitment to written communication it's definitely manageable. We've written an overview of all the tools we find helpful when working remotely in this blog post: [http://www.theremotetrip.com/2016/10/21/7-tools-will- boost-r...](http://www.theremotetrip.com/2016/10/21/7-tools-will-boost-remote- workers-productivity-road-every-day/)

Does anybody else have any other tool that they would really recommend for a remote team?

<comment><AUTHOR> We love iDoneThis here at TailorDev.

</comment></comment><comment><USER11> Working with mixed French / German teams seems to be a more interesting problem than having everybody working remote ;)

<comment><USER12> I can imagine difficulties that happen regularly in those teams not appearing, since remote work probably attracts more internationally minded people with fluent english.

I've had to work with a french dev that only wanted to write emails in english and refused to speak it on the phone, maybe because his office mates could listen.

A francophone boss that was so overconfident in his english ability, that he considered using "yeah" instead of "yes" as rude.

</comment></comment><comment><USER13> How's the pay?

</comment><comment><USER14> Wish I enjoyed working remotely, but it drove me insane when I did it for 8 months. I was ignored, time zone differences sucked, actually need human interaction, and I needed guidance as a junior. It's 100% a culture thing, and if I ever do it again, then I'll make sure to choose a company which embraces remote work.

</comment><comment><USER15> > _Our only office is Slack._

You mistyped Mattermost :)

Seriously, no reason to share all your company inner workings with a random 3rd party when it takes literally 5 minutes to set up a completely private (and also free!) clone of the same.

<comment><USER16> I might argue that Slack has no interest in anyone's inner workings. I've been at companies building relatively uninteresting products that treated Github like it was the same as emailing source code and server logins to the competition. I could be wrong, but I have never heard of a single instance of a company on Github having code stolen because it was on Github. I have heard of many companies who have had their internal systems hacked.

I might trust Github more simply because their entire product and value proposition is built around the use case of storing code while some company that builds a restaurant app -- their primary business isn't building code storage infrastructure. So why add operational overhead because of unfounded paranoia?

Unless you're running your own metal in your own data center, there's always 'risk.' Even then, if your system is connected to the internet there's still risk.

Proper risk management isn't "paranoia all the time," but an evaluation of the degree of harm posed by a particular hazard along with the likelihood of that hazard occurring. Then mitigating that risk in a way that is commensurate with those variables.

<comment><USER17> GitHub delivered the wrong source code to people for a while. [https://github.com/blog/2273-incident-report-inadvertent- pri...](https://github.com/blog/2273-incident-report-inadvertent-private- repository-disclosure)

I'm not bashing GitHub, but some people find more value and less risk in using git in its "native" _distributed_ mode.

<comment><USER18> I think it's a little misleading to call that "a while". The post says "156 private repositories" were affected during a "ten-minute window" representing "0.0013% of the total operations at the time".

</comment></comment></comment></comment><comment><USER5> That page only shows white text on white background for me.

</comment><comment><USER19> "Our only office is Slack"

But they're also doing consulting. What if one client adds them to HipChat and another to Skype? Three offices this way?

<comment><AUTHOR> Ha ha. If they use HipChat and Skype, then it is a bit like we are "outside of the office" ;-)

</comment></comment><comment> nommm-nommm Is there an expectation that you're available during non-work hours? Or does work time and personal time blend together?

</comment><comment><USER20> Their fonts are broken in my Firefox 43.0.1. (I know it's old but still.)

</comment><comment><USER21> Good on ya!</comment>


Email service used by Snowden shuts down, warns against using US-based companies - <AUTHOR> http://www.theguardian.com/commentisfree/2013/aug/09/lavabit-shutdown-snowden-silicon-valley <comment><USER2> "Can we call it a police state now?"

I saw the question on Reddit after a different revelation last month. I feel like we're going to ask that question more and more.

I can only hope more and more of us are inspired, as Snowden was by Levinson (Lavabit's CEO) and many of us have been by both of them, and we act to protect ourselves and constrain our governments from overreaching to where they can't help repeating the disasters of previous overreaching governments.

<comment><USER3> My reply on Reddit when I see people bring that up is simple:

You insult people who have experienced a police state by calling what we are experiencing a police state.

A police state has no distinction between legislation and executive.

Our legislation is currently investigating the president for: * CIA coverup of the attack on our Benghazi consulate' * IRS targeting of political opposition

They're planning on using their primary power, the power over our nations money, to enforce not only strict budget cuts, but requiring that the President's signature legislative victory be repealed.

That's before we discuss the court and how they've treated the President. Remember when they threw out his NLRB nominations as unconstitutional?

Now someone will bring up spying, but I urge you to realize that Congressional distaste for spying is centralized among the less important Congresspeople. Our leadership on both sides of the aisle is largely supportive of the infrastructure, seeing as they wrote and passed all of the laws that make it possibly. That's not an executive behaving without regard to legislation, it's one working with them.

I don't see a police state, and I think being cavalier with terminology does a grave injustice to lessons of the past and the people who have experienced (and are experiencing) a totalitarian government with truly no checks and balances.

<comment><USER4> I agree with you in that a key difference would be if people were held accountable for illegal acts. However, simply investigating the president is not enough - it would actually need to be possible for him to be accused and held liable.

An investigation in which the conclusion is already obvious and no one will be held accountable is not really an investigation, it is only smoke and mirrors. Throwing out one set of nominations as unconstitutional among hundreds is the same smoke and mirrors.

The ability to create a public drama while the real decisions occur underneath is certainly no proof of the lack of totalitarian government. Not that I'd say the USA is a totalitarian government, just that your proof is very shaky.

<comment><USER5> Why are you so sure these programs are illegal? Might it be possible that you find them distasteful, but that under our current Constitutional and legal regime, there's nothing for anyone to be "held accountable" for?

<comment><USER6> On the subject of whether it's a police state, illegality is irrelevant. If the law makes it a police state, it's still a police state.

<comment><USER5> But that's not the point to which I replied:

 _I agree with you in that a key difference would be if people were held accountable for illegal acts._

If you think the law makes it a police state, then argue about the law, but RyanZAG was suggesting that some evidence of a police state is that laws meant to restrain the government are not being enforced.

</comment></comment></comment></comment></comment></comment><comment><USER7> How is it possible for Snowden to be inspired any further?

He sacrified his life for us. He is the inspiration.

Certainly no president in the next few terms will rest until he is rendered, he has to look over his shoulder now forever.

Thank you for your sacrifice Mr. Snowden.

<comment><USER8> Sacrified his life? Please stop. He merely leaked classified data and sold pieces of it here and there. He is basically living the life of a celebrity right now yet dramafies his existence.

<comment><USER9> HN folks. I think ck2's response and pearjuice's response are both inaccurate as they represent an extreme view. It might be useful to read about celebratory and the attractions and psyche of those that are drawn to it. Many of you here share Snowden's feelings but none of you did what he did. Was it simply his sense of justice that made him do this? Or something more? If he'd stayed in the US and immediately faced the music it would be much more apparent that he's a true hero willing to sacrifice everything for his beliefs. Once he plotted the whole thing and moved to a safe place before releasing it and has looked to avoid any punishment for his actions by trying to get to or stay in safe countries it's apparent that it's not a black and white case. So I don't understand why ck2's kind of dreamy eyed quote is treated differently to anovikov and pearjuice who are in downvote hell. The answer is Snowden is neither hero nor vilan.

<comment><USER7> I don't worship Snowden at all or see him as celebrity. If anything I wish there was 100% more attention on the information he brought to light instead of him.

I merely recognize his extreme sacrifice and thank him for it.

If we are supposed to thank the people who ran and signed up for the military to invade Iraq and empowered the insanity of the last administration, we most certainly can thank Snowden for showing us that not only has the insanity not stopped, it may have gotten far worse.

<comment><USER9> Well ck2 it certainly reads like something close to worship. "How is it possible for him to be inspired any further?" "Sacrificed his life" "He can't be inspired, he is the inspirer" That's pretty strong stuff.

</comment></comment></comment></comment></comment><comment><USER10> CALEA (Communications Assistance for Law Enforcement Act, 1994) addresses real-time monitoring of the communications of a single person, by way of a warrant. Lavabit has complied with warrants in the past [1] without shutting down services. Real-time interception does not fundamentally break Lavabit's security model [2] of encrypting incoming email and never storing the user's password, which is required to use their private key when they wish to access the mail. The implication in this shutdown is that the basic security model would be compromised, allowing untargeted retroactive snooping without needing to wait for the user to log in. Such a system is functionally equivalent to not having server-side encryption at all. Regardless of your stance on government snooping, this is just bad security, allowing a successful attacker to take all data in one shot rather than only being able to snoop on users currently accessing their mail.

[1] [http://ia600908.us.archive.org/9/items/gov.uscourts.mdd.2362...](http://ia600908.us.archive.org/9/items/gov.uscourts.mdd.236204/gov.uscourts.mdd.236204.docket.html) [2] [http://possibility.com/LavabitArchitecture.html](http://possibility.com/LavabitArchitecture.html)

<comment><USER11> Reading this is super interesting...ever heard of a Consent to Assume Online Identity Form?

</comment></comment><comment><USER12> "Note how a country's human rights problems becomes of interest to the US political and media class only when that country defies the US"

I am glad Greenwald has cottoned on to this and also made pointed remarks on the use of the abuses of others to question the ethics of Assange and Snowden in their "choice" of destination. It's reminiscent of the cold war retort from the soviets.

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

</comment><comment><USER13> Snowden: "Google, Facebook, Microsoft, Yahoo, Apple, and the rest of our internet titans must ask themselves why they aren't fighting for our interests the same way".

Indeed, they must. Your move Google, Facebook, Microsoft, Yahoo and Apple.

<comment><USER14> Shifting the blame and the burden for policy reform onto firms is not only silly but also unfair, you can't really expect them to shut down, they are not one man operations like Lavabit.

<comment><USER15> It is not unfair. At least some of them, most notably Google and Facebook, actively allure their users to share more and more of their private data, while misleadingly claiming, that they are able to keep them safe. If more and more people will realize the risks of sharing their personal data with those companies, it can endanger their whole business model. So who should fight most vigorously, if not them?

And nobody says they have to immediately shut down.

<comment><USER14> You can't declare that they're not fighting because you have no knowledge of what is being done by their lawyers and lobbyists, especially since the courts involved are secret.

Lobbying scales better than shutting down or suspending service.

<comment><USER16> Right, we have no knowledge that they're fighting for us. And until we do, we put our money where our mouths are, stop using their services until we can be sure they're honoring our privacy. If anyone is able to fight, it's them, not the small businesses. So put the burden on them, if they want our data, then prove they can keep it safe.

</comment></comment></comment></comment></comment><comment><USER17> And now we have completed the move to the story is about Snowden.

I wonder what his favorite food is? What is his favorite band? Where is his favorite place to shop? What does he think of the architecture of St. Basils?

A few more weeks and it will be 'Privacy Expert Snowden says...' and no one will remember why he's even famous.

<comment><USER18> Stop assailing our great leader Snowden Christ.

<comment><USER19> Hmm... its possible for people to miss even massive changes in culture at the point of inflection.

I personally felt it this morning when I was getting ready to reply to an email to a friend with a cold-war joke that in times past I would have never thought twice about sending. I didn't send.

</comment></comment></comment><comment><USER20> Kind of sucks for those customers though, who can't get their email out. I get it, but man I'm glad I didn't use lavabit. The lavabit founder is probably going to have to deal with some serious civil legal problems, and maybe even criminal ones too.

I don't know where I stand on this. I feel like the NSA can't respond because they're trapped by the same secrecy that they operate in from speaking out, although the lies and backtracking don't help, so this echo chamber is just amplifying itself to the point people are making big bold moves that hurt themselves (and their customers) when anyone has yet to demonstrate a single instance of where the NSA has misused their information (if you don't assume the DEA parallel reconstruction is using NSA data, which is maybe speculative or not).

Well at least Obama is meeting with Tim Cook about this, because that makes sense. I've been thinking, why doesn't Tim Cook go talk to the president about this. Because...yeah.

</comment><comment><USER9> Help me with this. A) I'm a non dev and b) I'm trying to cut to the chase vs use inflamed terms like Freedom of Speech and Police State. I'm piecing this together from the few comments I see that trying and get to the core of the issue.

i) Lavabit's provided a communication service (email) that was uniquely designed so as the content's literally did not touch their servers. Therefore, if the NSA came to them wanting to look at communications by their users they would literally be told "It's impossible to do that" ii) NSA (or government in general) says "We cannot allow you to have a service that is completely untraceable. You need to begin having a way to trace this. iii) Lavabit's understands that this is their commercial value proposition. Should they be forced to do this they literally go out of business. iv) They fight it hard for a while but realize it's futile so shut up shop vs slowly go out of business.

Is that right?

As a side note I'm somewhat uncomfortable with the Greenwald/Snowden circular loop. It's very close to a propaganda loop and not all that different to other media outlets who get two like minded people and thus really just have a mutually agreeable conversation vs a reporting role. The danger being of course it's passed off as news by being positioned as such.

<comment><USER21> > that was uniquely designed so as the content's literally did not touch their > servers

It only touched their servers in encrypted form, never plaintext.

They would have had to wiretap their customer to retrieve content (for example, client side JS monitoring the next time the user accessed their email on the server) since all email was encrypted on the server harddrives and only accessible via the user.

Instead if it wasn't encrypted they could have used a normal search warrant which would have given the police access to the plaintext content immediately.

What was unique about Lavabit is that they never had the ability to decrypt the content without involving the user, since they never had the "private key".

</comment></comment><comment><USER22> This is the kind of scenario one would expect to find if encryption were introduced into a totalitarian society.

</comment><comment><USER23> I know we all trust pg and all... but are there non-US-based alternatives to Hacker News that we should be considering?

</comment><comment> k-mcgrady I'd love to know what the consequences of making public these secret court orders and trials. One company standing up to the government and making public the actual content and threats could make a big difference.

</comment><comment><USER24> Yet a "safe" email system is now gone. A better idea would be to move yourself and your encrypted email company to a country that will let you keep providing such a useful service (assuming there is one).

<comment><USER25> Email is not safe, by design. Even if you do encrypt the contents using PGP or GPG, the headers are too much exposure. They will know who when and with whom you correspond, and all the hosts the mail passed through (if you are not using anonymous re-mailers). The current implementation of email is "defective by design". But _there_are_ alternatives [1], you must just start using them.

[1] RetroShare, BitMessage, I2P Bote, Freenet + Frost and some others, which haven't tried yet.

<comment><USER26> It might sound odd, but I think an easier solution is to commit to being persecuted by the tyranny. The alternatives are to prevent it or live under it, committing to the persecution should encourage prevention.

<comment><USER27> I don't understand.

<comment><USER26> A robust and open society is a better weapon against tyranny than a well managed public profile.

</comment></comment></comment></comment></comment><comment><USER28> The darker side of this, they can't speak about it because of state secrets, and any other individuals involved in other stuff has to deal with the same problem.

I'd think, people would end up speaking out when they're threatened by the NSA to shut up, but they have nowhere to go for legal advice.

I wonder if the government or the NSA could manage to shut down a class action if there would be one.

</comment><comment><USER11> Why is Lavabit, based out of Texas, appealing in the Fourth Circuit (Maryland, West VA, Virginia, North and South Carolina)?

<comment><USER29> Same reason more patent cases are taken to east Texas: some states seem more favourable than others to certain parties in certain types of case.

<comment><USER11> Patent cases are civil, you can absolutely choose where you want to go, correct. I can't imagine the same is true for which jurisdiction the government uses in handing down a NSL...as I type this I wonder if it came out of Maryland though...

</comment></comment></comment><comment><USER30> Now that we are seeing more and more publicity surrounding this issue and companies are at least attempting to be transparent, how can we spark a fundamental change in the way the Govt sees this issue.

The public need to hold these people accountable in some fashion, criminally is probably out of the question. Whether it be by some investigation committee by congress, supreme court intervention, or simply voting the current incumbents out.

We need to stop the Govt from just abiding by the letter of the laws and not by going with the Spirit of the law. The Government shouldnt be finding loop holes in their laws or playing games about the meaning of words when the are questioned by officials.

</comment><comment><USER31> What's up with all of these news articles where person A thinks topic B is word "C", in quotes? Maybe I'm missing something, but just throwing words onto events and calling it news looks like unthoughtful neurolinguistic programming. "this thing is called 'horrifying'". Often the articles don't declare the subject, so we just see that an invisible someone has done something. Sort of like "Wall graffitied with "$GANGTAG" sign". Off topic, I know. Just having a tough time grappling with news articles titled like this..

</comment><comment><USER32> This blew up more than I expected. It is the front page story now of Spiegel Online (one of the top German newspapers).</comment>


Show HN: I made a game (4x4x4 Tic-Tac-Toe) - <AUTHOR> http://phenomnomnominal.github.io/tic-x-tac-x-toe/

<comment><USER2> Should add in a graceful failing for browsers with no WebGL support. All my browser is a blank page with controls. I had to look at the Dev console to figure out WebGL was failing.

<comment><AUTHOR> It should fallback to the Three.CanvasRenderer - [https://github.com/phenomnomnominal/tic-x-tac-x- toe/blob/mas...](https://github.com/phenomnomnominal/tic-x-tac-x- toe/blob/master/coffeescript/3D.coffee#L79-82)

What did you use it on?

</comment></comment><comment><USER3> Great game, I find it is easiest to play with it exploded the entire time, only checking back normal view time to time. Fun!

</comment><comment><USER4> Played on iPhone. It was really simple and intuitive. Altough too easy to win

</comment><comment><USER5> This looks really cool, will give it a go when I get home

</comment><comment><USER6> Its kinda cool, mouse tracking is really broken.

<comment><AUTHOR> How so? What browser did you use?

<comment><USER6> Fire Fox 32.

</comment></comment></comment><comment><USER7> I like it, good idea</comment>


If Only Airline Tickets Were Like Sports Tickets - <AUTHOR> https://www.wsj.com/articles/if-only-airline-tickets-were-like-sports-tickets-1540386771 <comment><USER2> I'm unable to see the full article (paywalled), but I'm not sure that making airline tickets like sports tickets is a great idea: for popular routes they would sell out shortly after they are available, and scalpers would hike up the prices to make a profit.</comment>


How about if Steve Jobs smoked a pipe? - <AUTHOR> http://www.guardian.co.uk/technology/2009/jan/08/apple-macworld-dullsville-pipe <comment><USER2> This is from the same guy who contributed the amazing write-up of Le Web last month:

[http://www.guardian.co.uk/technology/2008/dec/10/startups- in...](http://www.guardian.co.uk/technology/2008/dec/10/startups-internet)

Discussion: <http://news.ycombinator.com/item?id=393629>

</comment><comment><USER3> Sooo some guy at the Guardian smokes a pipe and the author (and everyone else) was bored at Macworld. Did I miss anything?

Don't get me wrong, I like this guy's style but there's not much here to sink my teeth into.

</comment><comment><USER4> Depends. What does he put in it?</comment>


The peak which closest to outer space is Chimborazo and not Mount Everest - <AUTHOR> http://www.npr.org/templates/story/story.php?storyId=9428163 <comment><USER2> "Therefore people in Ecuador, Kenya, Tanzania and Indonesia are all a bit closer to the moon (not much, only about 13 miles closer) than people standing at the North and South poles."

I may just be pedantic, but isn't this off by the equator's radius? The moon's orbit is only inclined by 5 degrees, so it's roughly above the equator.

Also, this is a rather meaningless metric. Sea level is defined based on local gravity, so ignoring winds and temperature, air should be at the same pressure at a given altitude ASL at any latitude. Right?

<comment><USER3> The "outer space" boundary above any point on the surface does occur at the same pressure. And that boundary will also be an oblate spheroid. However, it won't have the same shape as the surface, given mantle inhomogeneities. But I have no clue what the differences look like.

<comment><USER4> Distance from the center of the Earth may have worked better than proximity to outer space.

<comment><USER3> True. But probably hard to determine.

</comment></comment></comment></comment><comment><USER5> They probably mean the peak furthest from the center of the earth rather than "closest to the moon" (which would be a rapidly moving point on earth and a silly measure). Also, wouldn't "closest to space" be measured as height of the atmosphere, which is roughly a height above sea level?

</comment><comment><USER6> Needs a 2007.

"(And by the way, if you want to see a really, really outrageously perfect sphere, check this out.)"

Assume it's -

[https://www.youtube.com/watch?v=eAhfZUZiwSE](https://www.youtube.com/watch?v=eAhfZUZiwSE)

<comment><USER7> Also please fix incorrect grammar in title. Why not use original artivle title?

</comment></comment><comment><USER8> And not the rest of 8000s? Oxygen levels and temperature aren't characteristics of proximity to "outer space"?

Idiots, idiots everywhere.

<comment><USER9> Chimborazo is not an 8K meter peak but it is the peak that's furthest from the center of the earth (because it's a fairly high 6K+ meter peak near the equator). Oxygen levels are, however, a function of height above sea level in a location--temperature is a function of many things--so Chimborazo in that respect is like other 6K meter peaks.

Proximity to outer space is an odd way to put it. I guess the atmosphere, to a first approximation, is also higher at the equatorial bulge.

<comment><USER10> The atmosphere is thinner toward the poles. The partial pressure of oxygen at the summit of Denali in Alaska (6,000m) is about the same as at the summit of a 7,000m peak in the Himalayas.</comment></comment></comment>


Literate programming in org-mode - <AUTHOR> http://howardism.org/Technical/Emacs/literate-programming-tutorial.html <comment><USER2> That is a very nice writeup, thanks Howard!

I have recently become very enthusiastic about using .org-mode, and this looks like a nice alternative to Jupiter notebooks.</comment>


Why I won't do coding tests - <AUTHOR> http://www.developingandstuff.com/2015/05/why-i-wont-do-your-coding-test.html <comment><USER2> At my place of work we have a coding test that we issue to all applicants for the software engineering roles. Here are a few responses from our point of view...

1\. We know you can probably code, you've already passed a phone conversation about your coding experience, but you may not have a GitHub profile (you might not be allowed to at your current place of work, or you might have experienced harassment through GitHub), so we're not going to penalise you for that.

2\. We want to see your solution to a problem that we know REALLY well. We know the pitfalls, the places people often trip up, we know how to tell if your solution is going to be maintainable over the long term. That's why we want to see your solution to our problem, not just 'portfolio' code, or even a 'bugfix'. Not to mention the fact that the bugfix should be already done by the team, finding tasks that are low enough priority that we can give them to someone outside the team is actually difficult to do.

3\. Our coding test is quite long (3 hours), but roughly capped, we ask candidates not to take longer than this. This is significantly less commitment for most than taking a day off work for a day of working/pair programming/etc. We do pair program later in the interview process, but not until we're pretty sure that bringing the candidate on-site isn't a waste of their time, and ours.

I realise that there are some devs who reject the idea of coding tests, but we have found it (in the form we do it) to provide some of the highest signal to noise ratio information in the interview process, and find it to be a really good balance of time commitments on both sides. Very few candidates drop out because of it.

<comment><USER3> _We want to see your solution to a problem that we know REALLY well._

Does that give you an expectation of the sorts of things that someone new to the problem will spot? If so, how do you manage that expectation - eg if the user misses something in their 3 hour test that you only spotted after using the same problem for 6 months, how can you ignore the fact they still missed something?

<comment><USER2> Missing something doesn't rule them out, nothing in the test is a hard failure. That said, the candidates that really shine are the ones who _do_ spot the things that others don't. It allows for the really good candidates to differentiate themselves.

Mostly though, we're focusing on the assumptions that the candidate is making about the problem, and the data structures they use to solve it, we just wouldn't be able to analyse and compare to the same extent between two pieces of portfolio code from two different candidates GitHub profiles.

<comment><USER4> Sounds like the ideal candidate or at least the one most likely to succeed is someone who has seen the problem or a version of it before. Hope your other problems are in the same class.

<comment><USER2> The problem is sufficiently random and fictional that people won't have seen it specifically before, and a lot of the focus is on code readability and maintainability, and I don't think that's something you can fake having seen a problem before.

</comment></comment></comment></comment></comment><comment><USER5> Next blog post: Why I am unemployed

These coding tests are actually quite an equalizer in terms of interviews: you may be ace at answering all whiteboard/phone-screen questions, but when it comes down to actually coding -- something you are being hired to do, you can't crack it. On the other end: it lets people who may not be amazing at whiteboard questions the chance to show that despite that they can get things done.

When somebody interviews for a software engineering position, the goal of the company is to as quickly as possible get an objective opinion on the person by seeing how that person compares to other candidates they have seen. This is good for the candidate too, because who wants to be subjected to an arbitrary process?

All of the alternatives suggested in the article are fine, but they don't make the interview process very objective.

Things you can see during a coding test:

\- How they tend to structure their code

\- Do they like to over-engineer problems

\- Do they dive right in or think things out

\- How easy is their code to read?

\- Are they experimental, do things in an interesting way?

\- Are they prone to making bizarre design decisions

etc. etc.

<comment><USER6> The author's position is sound for the hypothetical he discussed, where, if a company starts the conversation pursuing a candidate, it's reasonable for the candidate to expect that the company has done their homework (why else would the company try to hire you in the first place?).

So I'd suppose, if the company already knows you can solve problems with software, what they don't know is how well you'll fit in with the staff they envision you working alongside of. Skipping right to the coming-in-and- collaborating step makes sense here for both sides.

The tests definitely make sense for the other main case here, where the developer starts the conversation. Then no one should expect the company staff to go out on their own and search out Random Developer #45's blog posts.

I'm curious, how do you/coworkers supervise the coding tests you have candidates perform? You can tell some things about approach and tactics from a final draft of a solution, but I would imagine most of your listed desired goals would come from watching and interacting with the candidate while the test is being performed. And in that case, it'd still seem to be a big effort for the engineers and such who need to support?

<comment><USER5> There is barely any supervision: they are given a problem, and asked for a solution which matches certain criteria. You can't find the solution on Github. What's important is that it isn't a test of someone's intelligence or personality, but rather their pragmatism and ability to actually produce code. It really depends on what values you are looking for, though.

An example problem is: parse this non-standard log file and report back some numbers/answer these questions (e.g. show a visitor funnel, based on uniques, etc.). The more encapsulated and defined the problem, the better. It's not a theory type question, such as build a btree search of this data: it's something which you could face while working at the company and you can solve it however you want. Just like in real life, there are a range of solutions and edge cases. There is a soft time limit of a few hours, but nobody is counting. However, that time limit is what changes the difficulty.

They can either use their own machine or a company machine, and any language they want (with some recommendations). They can of course ask questions anytime they want, but other than that they are left on their own.

At the end, they are asked to walk through the solution and tell us why they chose to do what they did, what issues they had, if they see alternative ways to do something, how they might change it if various conditions changed, etc. It's the opening to a conversation.

Afterwards we rarely try to actually run the program, but different people on the team are asked what they think of the solution (kind of like a code review). Since everybody has seen it many times before, there is general consensus on red flags and everybody more or less has an idea of how a particular solution fits in with other ones we've seen, but sometimes there is debate on merit or style.

So it isn't that time consuming from our point of view.

</comment></comment></comment><comment><USER7> Any time I see one of these rants I can't help but assume that the author has never been remotely involved with hiring from the other end. The sheer volume of crap resumes you get from people that can't code is utterly astounding, especially from recruiters. A simple blanket "Yeah sure here do this test first" is necessary to stop your engineers drowning, though even then you still get a whole bunch of recruiter forwarded candidates that simply cheat on any test you give them, automated phone or otherwise.

That said, if a company is actively trying to poach someone, asking them to do a coding test is rather stupid, since you wouldn't be going after them if you didn't know they were good.

<comment><USER8> _The sheer volume of crap resumes you get from people that can 't code is utterly astounding, especially from recruiters._

But he didn't suggest that people evaluate his abilities based on his resume. His post didn't even mention the words "resume" or "CV".

 _Any time I see one of these rants I can 't help but assume ..._

Maybe you should be less assuming, then.

</comment></comment><comment><USER9> These discussions are always frustrating, because both sides have perfectly sensible points.

From the employers' side: They really really really do get many candidates who cannot program at all. I've been on the hiring side and seen the applications, and the amount of worthless non-programmers out there is high. And it's not just for entry-level posts -- plenty of these people have a decade of experience and titles with "Senior" in them. A simple "can you write code" filter is absolutely essential for a hiring manager not to spend all their time interviewing terrible junk candidates.

From the developer's side: If they're any good at all, they really really really can get hired by a company they want to work for very quickly and with little effort, and so their motivation to jump through hoops is going to be low. If ten companies want to hire me, and two of them want me to spend half a day doing coding problems, well, guess who I'm going to get back to last/never.

The employers aren't stupid. The devs being interviewed aren't stupid. Everyone has totally sensible priorities.

So this really just comes down to individual situations. If you as an employer are having a hard time finding people and you're requiring a coding test... maybe quit requiring it, see if you get a broader applicant pool. If you as a developer are having a hard time finding a job and are rejecting employers that require a test... well, suck it up and do some of the tests.

But if a developer is happily employed or an employer is able to find good devs, well, maybe you've hit a good compromise point for now, but be willing to re-evaluate in the future.

<comment><USER10> This is the most sensible thing I've ever read on the internet.

</comment></comment><comment><USER11> It seems to me that there's a high-end piece of the market where none of this applies.

If you're really good, you can go your whole career without ever having to throw your resume over the wall and wade through this sort of filtering process. And if you have an experienced team who have worked with lots of good devs in the past, you can reach out directly to them and go straight to the hiring part of the interview.

It's only where those two ends have to interface with the rest of the hiring universe that you see friction like the author describes. If you're the guy who built Big Thing X and some random company tries to get you to spend 3 hours on their coding test, you're going to say no and they're never going to find anybody half as good as you. And if you're a team of Good Devs at a Genuinely Good Shop trying to hire with a job ad, you're going to get a thousand applicants who can't FizzBuzz and you'll develop scars in the form of coding tests.

I think the key as a developer is to rapidly get one's self into that category where you don't need to deal with this crap. The last time anybody dared hand me a coding test was a good fifteen years ago, and that was the last they ever heard from me.

I bet I'm nowhere near alone in that department.

</comment><comment><USER12> Where I'm at now, I kind of skipped doing their customary coding test, because someone else vetted my competence.

Now that I think about it, having observed some discussions about other candidates' solutions, I don't know if I would have passed.

I can bring plenty of value to companies because I have broad knowledge, good taste, and devotion to product quality... but sometimes my first draft of a solution to an algorithmic problem is a little strange, or simply doesn't match the tastes of other reviewers for whatever reasons.

So I'm pretty skeptical about these things. They seem to me like a bad way to effectivize the process of judging someone's competence. I would rather have a real conversation about what they've done, and try to collaborate with them for a while.

If I can't find a candidate with whom I can have a good conversation and whom I trust without having them solve a puzzle, then I'd rather not hire anybody.

<comment><USER13> Yeah... I'm suspicious of involved coding tests. Low-level stuff (e.g. FizzBuzz) to filter out completely inappropriate applicants is one thing. But judging people on their first pass at a problem could have many pitfalls. For example, it's common to make a first pass solution that does things "weirdly" or is "over-engineered" because you want to fully explore the problem the first time, rough it out, then make a robust final version later.

Being able to quickly solve mid-tier problems is nice, but how well does it correlate with being able to solve _real_ problems in a _suitable_ timeframe? I don't think anyone knows.

</comment></comment><comment><USER14> From my experience I kind of disagree that you can weed out non-programmers by looking at their Github profiles. This might work for people that have a lot of projects/contributions there, but it doesn't work for most Github users which have (if at all) only a few stargazers and no very active projects at all. So if we'd use Github data to weed out people based on their repos/stargazers count we would probably miss a lot of very good programmers that just don't happen to be active there.

A simple coding test (ideally in a live environment over Skype) on the other hand allows me to (very roughly) judge a programmer's general ability within 10-15 minutes: Does he/she know the standard libraries of the given programming language? How does he/she structure the code?

Simple problems that are roughly related to your field of work are suited best for this from my experience. For example, as we work a lot with graph data, one task we often use is to load a set of lists containing vertices and edges from a JSON file and convert that into a linked graph structure within Python.

When hiring senior people most of this is usually not applicable as you can rely more on recommendations and the previous work experience of the candidate, which should give you better information than Github profiles / live coding tests.

</comment><comment><USER15> Try hiring and getting flooded by applicants who can hardly implement `min`. It would be a waste of the company's time to bring all those applicants in. So long as they're not asking for a ton of my time, I don't mind doing a simple screening.

<comment><USER16> Yup. My test for this kind of thing is to ask people to write a function that can sum the numbers between two numbers. It's simple, touches on enough to show if the dev is at least minimally competent, and it's a bonus is they give the O(1) solution.

It's surprising how many timewasters even a simple test like that can weed out.

<comment><USER17> If and when people ask me this (exact) question I like to tell them that although I can implement the O(1) solution, I just copied it off of a 14 year old.

<comment><USER18> Seperates those who remember their math from those who don't! Brilliant. I love the Gauss equation for this (had to look it up, I need to review math more).

</comment></comment></comment></comment><comment><USER19> At my last job, I was hire #3 and skipped the entire interview process (had worked with my boss for a couple of years already, so that was interview enough). As we ramped up the staff to 20+ we added rigorous interviews until it got to the point where I'm not sure I could have passed it, despite being one of the most productive members of my team in real engineering situations.

Similarly at my new company, our coding test is geared toward people with different responsibilities from mine. I'm very much big data / Spark, whereas the test is geared toward full stack developers. They skipped it for me, which is good -- I doubt I'd have passed it.

All this is to say, I am skeptical of code tests. I've seen some value (when we filter out really bad apples who can talk well but can't code) but I've seen a lot of negatives, too.

</comment><comment><USER20> Yeah, the company I work for uses a coding test. It's a simple CLI program that is relevant to our product, business analytics, that we ask them to spend no more than 2-3 hours on. The test has several tasks to complete, we make it very clear that someone who completes only 1 task but has excellent code structure, unit tests etc etc is more likely to get the job than someone who just blitzes through all the tasks.

The task avoids assuming any knowledge of algorithms / advanced maths / databases or web frameworks. We're only interested in their approach to solve a problem with code, not what libraries they've spent years learning, or what project euler problems they've committed to memory.

I came up with the test after I was going round a job fair (for the free stuff) and was handed a coding test to produce a simple CLI twitter clone. I had no interest in applying for the job but I did the coding test anyway. It's only 2 hours of my time and I find coding / solving problems fun.

It's really helped us distinguish developers who see work as a 9-5 job that they only do because they must and those developers who just love solving problems. Maybe the technical skills of those 2 developers are roughly equal, but one of them is going to be far more valuable long term than the other. So far we've only hired one candidate after introducing the test, and they've been the best hire we've made.

As a side note, we always do a phone interview first so that we don't waste time (ours and theirs) giving the test to complete no-hopers.

<comment><USER21> > It's really helped us distinguish developers who see work as a 9-5 job that > they only do because they must and those developers who just love solving > problems.

The two aren't mutually exclusive. Many (most, even) of the best developers I know will come to work at 9am, be super-productive for 8 hours, and then completely switch out of Developer Mode at 5pm. It's entirely feasible for somebody to be extremely passionate about programming and learning and problem solving and all the other things that we associate with "good" developers without them doing any sort of work in their own time.

Developers are people, too. They have families, friends, hobbies, and other things that are more important than your 2-3 hour coding test. You are alienating a large number of people by asserting that the ones who complete your coding test are "distinguished". You are also seriously reducing the size of your talent pool whenever you want to hire somebody.

<comment><USER20> I think you have misunderstood me, or I wasn't clear enough. We're not looking for people who work endless overtime or spent every waking moment on open source projects.

The text you quoted says "a 9-5 job that they only do because they must", which I believe would exclude anyone "extremely passionate about programming and learning and problem solving". I'm talking about people that have no passion for it, regardless of what their other passions are.

Our new hire arrives at work at 9:30am and leaves at 5pm.

With regards to hobbies, families etc. Thats understandable if they don't have time to complete the test even though they are job hunting. However, I'd rather miss out on a good hire than risk a bad hire. My company can more easily survive spending a bit longer recruiting in our reduced talent pool compared to living with several bad hires.

</comment></comment></comment><comment><USER22> We had a candidate who graduated from an Ivy League school who refused to take our code test with: "I went to ____, I shouldn't have to do this." We would have probably considered him if he asked "Can't you just look at my Github" like this person but as it stood we rejected him outright because someone with that attitude is not likely a cultural fit for us.

However, from the article point for point...

"I know how to code, and can show it" \-- we don't have the time to read your entire blog and all your GitHub commits. We have hundreds of applicants.

"I have a day job, and several side projects: I won't spend a sizable chunk of my free time so they can tick some boxes about my coding skills." \-- our software engineers have a job too, they can't spend several extra hours per candidate (when there may be hundreds) to look over your stuff. Second, the time it will take you to do this is WAY less than driving to the office for any of the other suggestions.

"work with them on the real job, and see how it feels" \-- again, does not scale at all.

Maybe he has never been on the other side of the table. But we reject 48/50 people. Many of whom couldn't even do Fizz Buzz. The tech test is a way to make the process scale and make it so we don't waste time. If each of those 48 people cost even one hour of engineering time we just lost thousands of dollars.

Edit: on second thought, he did say the company reached out to him. We do tend to do things differently if we reach out specifically to a person. But we do that very rarely.

<comment><USER23> "we don't have the time to read your entire blog and all your GitHub commits. We have hundreds of applicants."

Applicants are expected to take their time to submit an application that stands from the rest, and bla bla bla, but employer can't be expected to visit a github profile, nice.

<comment><USER22> That's not what I said.

Employers can be expected to look at Github and websites and all that, for people who pass reasonable screenings. Not any person who emails us a resume.

A well designed code challenge takes less than an hour, which is what most candidates would take just to get to the office (one way!).

I haven't looked for a job in a while but last time I did, I spent an average of EIGHT hours per company. I would have loved to have a two hour test I can take and be immediately skip four hours in the office asking me about algorithms.

To think otherwise is some self entitled bull shit. Having a job is something YOU work for. The company gives you great benefits, high pay, training, advancement opportunities, and meaningful work. If you can't be bothered to do a 1 or 2 hour tech challenge then you don't deserve a good job.

Our side of the equation as employers, is we have the money to pay you, we work hard to build a great place for you to work, and we offer opportunities for great people to thrive. That's our investment. We spent tens of thousands or more on that before you even submitted your resume.

I don't want to make assumptions and I could very well be wrong but you sound like someone who has never read resumes. Most candidates can't even be bothered to write a cover letter. They blanket dozens of job listing with their resume. So that person who blanketed dozens of listings with their resume has a right to take up engineering time to review their Github?

One of our screening questions is "have you installed our app on your phone?" and over half of people say "no" and another quarter lied. So we're expected to spend hours reviewing your code but you can't even install our app on your phone and research the company you applied to?

Guess, what, for those people who didn't even bother to look at our app. Congratulations, you don't have to do the code challenge! You saved yourself two hours... and lost the job... but that's not what's important. You don't have to write code!

And you know what... I have fifteen years coding experience, 7 years management with hands on coding, a computer science degree from a great school, a couple high-profile names on my resume, and a screaming newborn baby and I wouldn't hesitate two seconds to spend two hours to do the silly code test for a job I want.

</comment></comment></comment><comment><USER24> I don't like coding tests, but they are far better than the alternative: these typical multi-hour interviews involving lots of white-boarding fake code.

A venture-funded company who's entire technology stack is a basic Rails CRUD app grills you (in a room, or over the phone) about hypothetical uses of CS fundamentals that none of their own employees have touched since college.

I'd always rather establish my competency by submitting real working software I've written or solving some trivial coding challenges, rather than trying to solve these random brainteaser problems live in a high-stress, timed situation.

</comment><comment><USER25> The prevalence of these tests and the emphasis employers place on them should really put to rest that nonsense about "your Github profile is your CV" once and for all.

Recruiters are generally non-technical and unable to judge the quality of your open source work, and employers generally don't give it more than a cursory glance. And while Github profiles are needlessly abstruse, I doubt even a portfolio specially curated for their viewing would fare much better. Employers just don't care; they know that it's a buyer's market for talent and that there are more than enough applicants willing to subject themselves to their interview process, however abusive or insulting it may be.

Since almost no one ever gets a job because of their open source work, why do employers still make such a big deal out of it, with some even going so far as to state that they won't look at a candidate without a Github profile? Because it shows "passion," and a "passionate" developer is one they think they can more easily take advantage of. That's it.

<comment><USER26> It's interesting that engineers (sellers of talent) and employers (buyers of talent) both seem to think that the other side has it easier. I don't know if there's ever been a better time to be top talent in software.

<comment><USER25> If that were true, the wages for software engineers would be going up. They aren't. [http://www.epi.org/publication/pm195-stem-labor-shortages- mi...](http://www.epi.org/publication/pm195-stem-labor-shortages-microsoft- report-distorts/)

<comment><USER27> Depends where you are, obviously. Good javascript devs were on £30k a few years ago. Now it's £50k.

We've had javascript dev positions open for over a month now, £25k to £55k.

...if any javascript devs are after a job in Brighton, UK, shout.

</comment></comment></comment></comment><comment><USER28> Code tests are:

1\. Intrinsically unbiased.

2\. Applicable for remote candidates.

3\. Easily verifiable (unlike a github repo)

I'd take code tests over alternative interviewing methods any day.

<comment><USER29> Generally I agree, but on verification tests can make someone initially appear stronger than they are. E.g. if they find a stackoverflow post that matches the question.

There is also at least one "learn to code" bootcamp with a database of tests on github.

<comment><USER30> "if they find a stackoverflow post that matches the question."

To be fair, "figure out if someone else has solved this already on stackoverflow" isn't the worst approach to solving (some) problems.

I just did a coding test where the exercise was trivial, and indeed there are lots of good answers on stackoverflow. I am guessing the reason I have another interview coming, though, is that I made it easy to read, explained my logic in comments, and wrote thorough unit tests checking edge cases.

<comment><USER29> Agreed. I've seen people document forum posts they sourced as well, which I appreciate.

</comment></comment></comment></comment><comment><USER31> If I am already employed or not desperate for work, I will not do your coding challenge unless you pay me for it. Why? Because you get most (all?) of the benefits of the exercise but I need to do all the effort. Actors do get payed for doing castings.

<comment><USER32> > Actors do get payed for doing castings

i'm not sure where you are getting your information from, but in the real film & TV industry here in Los Angeles/Hollywood, this is simply _not true_.

actors do NOT get paid for doing auditions or casting calls. in some extreme circumstances -- let's say when a large amount of travel time is required to get to the audition -- some form of compensation _might_ be able to be negotiated, but this is very, very, very rare.

source for my information: i co-ran a production company here in Hollywood CA from 2005-2011.

<comment><USER31> In Argentina they do!

</comment></comment></comment><comment><USER33> An X hr coding test is very different than an X hour interview.

The interview process is intended to be a bi-directional flow of information. Giving someone a X hour programming test means that for X hours, the company gets to learn about the developer, but the developer doesn't really learn about the company.

The company is the one paying salary, so they set the terms of the interaction. But the feel of disrespect for the developers time is real and valid. If you chose to do a coding test, do so respectfully to avoid insulting the person you potentially want to hire.

</comment><comment><USER34> I take coding tests when they require up to 3 hours of my time. Once I had a company send me a coding test that they said should not require more than _20 hours_. And that was after a 20 minutes talk with the hiring manager. My first convo with anyone on the team.

Asking me to put 20 hours before even meeting the team is laughable. But, seriously, 2 hours is fine. It is fair since all candidates get the same test, plus it gives something to talk about during in-person interview and help avoid the f-ing coding at the whiteboard.

</comment><comment><USER35> As a company interviewing candidates, we see the recruitment process much like a conversion funnel for any website: there will be a lot of hits on our spec, some people will apply, of which some will do the telephone interview, of which some will get through to the coding test, and so on.

If OP doesn't want to do a test, then he will just end up as one of the ones that didn't make it through the funnel. This then boils down to whether there are companies out there that will take him on his project's merit or whether OP is desperate for a job.

A couple points I disagree with:

* "My main gripe with coding tests is that they ask me for an investment of my time and resources so that they can gather information about me, but I'm getting nothing back." \-- you can potentially progress to the next interview stage, you will refresh your memory on coding tests, etc. There is still something to be gained.

* "I've already expressed interest in their position." \-- there is minimal effort required to apply for a job. As an interview we get swamped by CVs that all look equally similar - we often need something to distinguish between these CVs. We have seen a wide range of coding test submissions and from this you can glean how interested the candidate is.

Finally, while the OP's suggestions are sensible, they are not always practical for companies, especially when it scales. We can't afford to be distracted by bringing a candidate into the office and work with us especially if we have multiple candidates. Even if the company decided to bring someone in, and assuming the candidate is capable, it will take them the better of a day to get up to speed and running -- setting up the dev env, getting the source, building it, making sense of the application, making sense of the feature/bugfix, making sense of the coding style, etc. They won't be effective enough to actually check in working code.

<comment><USER36> Getting to the next interview stage is not 'getting something back' according to his criteria - at that stage he doesn't know if he wants to progress, and doing a test doesn't provide more information. It gives the company information on whether it wants to progress, but not the candidate.

Also, refreshing memory on coding tests is not exactly getting a lot back. You don't need to do an interview to do a coding test, if that's your fetish.

Not that I completely agree with the guy. I don't mind coding tests or assignments, except when I have no idea whether or not I actually want to work at a company when they give me one. So, in that case, unless I'm really bored or feeling especially unemployed, I don't put a lot of effort in. I do understand why companies do them, and the company I work for does.

<comment><USER37> Thanks, that's essentially the answer I was about to write.

I think the main disagreement here is that OP considers hiring him to be a privilege where parent considers being hired by him to be one. As long as parent is OK missing out on all the developers that aren't hungry enough to subject themselves to one-sided interviews like this, he'll be fine.

I like to think there's a high correlation between one's skills and unwillingness to accommodate arbitrary processes, but have nothing to back that up.

</comment></comment></comment><comment><USER38> Speaking as a hiring manager, I won't even TOUCH a technical candidate without a coding test. Nope, burned too many times with resumes that were utterly bogus. Not wasting my time. Ideally administered at the whiteboard in front of me, so I know you didn't pay someone $5 on a chat board to do it for you.

It's not a big one - primary goal is to validate that you've actually worked with a database before. Relevant to the job.

But seriously....

\- The "Oracle Certified SQL Developer" who fessed up that she didn't know SQL (couldn't even write a basic query)

\- People that couldn't identify how to join tables...

\- The "Google / Motorola" Python Dev who didn't understand the difference between a list and dict (which is basic to the language, very first chapter of Dive Into Python)

\- And massive inattention to detail (leaving out entire sections of the request in their query)

Someone else can go attempt to manage them. I'm busy....

</comment><comment><USER39> I have also been frustrated and surprised by the technical interview process. For a Google interview, they had me cmd+tab-ing between a google hangout and a google doc (for the code). Why isn't there something simple and free that puts these two things together?

So I took the approach of trying to improve it by creating a small side- project that is just a simple collaborative code editor and WebRTC video/audio connection.

One-click deploy to Heroku, open-source, MIT licensed.

[https://github.com/crcastle/collaborative-code- conference#re...](https://github.com/crcastle/collaborative-code- conference#readme)

Feedback welcome!

</comment><comment><USER40> I really think this madness will only end if we all refuse to do coding tests, subject ourselves to multi-day interviews, etc. I do understand that this is easier to say when I have a job.

</comment><comment><USER41> My previous company had what I think was a good hiring process: they required about 500 lines of Python code (it was a mainly django shop), and if your code was good, they'd ask you to go there one morning/afternoon and implement some minor feature in the development codebase.

For frontenders, the process was similar, but they'd ask you for some mix of JS/HTML/CSS.

The 500 was a somewhat arbitrary number, but it was basically "show us a good amount of what you have done". In my personal case, I sent them a link to one of my python libs in github, but some people without github sent some files like headers and implementation (like one or two guys for a ObjC role).

If you passed the initial code review, survived the day with the team, they would still ask for one or two contacts of previous co-workers, teachers, etc., just to have a chat. In the end, we had a very very good team there!

</comment><comment><USER42> "I won't spend a sizable chunk of my free time so they can tick some boxes about my coding skills..." but you don't mind spending an entire day (for which you presumably took a day off work, if you're currently employed) doing it at their place of business?

<comment><USER43> I came here to say this.

Also, as an Australian who recently went to the US to do programmer job interviews, I was shocked at how widespread the idea of "whole-day interviews" were. I find it overly self-important and inappropriate when companies ask potential candidates to take an entire day off their existing jobs to come in and jump through hoops for them.

You can fire someone quite easily in the probation period if they don't perform as expected. So if after a phone screening test and a 2 hour in-office coding challenge a company can't determine a developer's worth then there's something wrong in its entire hiring process altogether.

/rant

</comment></comment><comment><USER44> It is strange how he mentions that one of their goals might be:

 _2 Only get the developers that are interested enough to perform their test in a ordered and timely manner._

and then dismiss it so lightly:

 _I 've already expressed interest in their position. I have a day job, and several side projects: I won't spend a sizable chunk of my free time so they can tick some boxes about my coding skills._

Maybe they are not interested in people who have so little motivation.

</comment><comment><USER45> When I want a full-time employment, companies get crazy about who they hire.

When I want a consulting gig, companies seem to give money to whoever comes first.

In the end it seems like getting an employment is a bad thing to do, since there is no real benefit of having a secure job for an engineer, because everyone is willing to pay her money for consulting stuff anyway.

</comment><comment><AUTHOR> Feedback from Reddit:

[https://www.reddit.com/r/programming/comments/4daew9/why_i_w...](https://www.reddit.com/r/programming/comments/4daew9/why_i_wont_do_your_coding_test/)

</comment><comment><USER46> So far spending a day (or two) onsite and working on something together with the team has been the best option for me. You: \- get to see what people are, how they work and what they do They: \- learn whatever they need about your skills

So it's a win-win.

</comment><comment><USER30> It may not help that the site for your cited example of a working app is returning an error:

[http://www.coverr.me/](http://www.coverr.me/)

Though perhaps it's only meant for light load and HN is overwhelming it.

<comment><AUTHOR> Yeah, that app is decommissioned. I'll update that working app soon, thanks for reminding me about it! :)

</comment></comment><comment><USER47> ...and why you won't get our job :-)

<comment><USER37> I think it's pretty clear he'd consider your job not worth the effort - that's his entire point, isn't it?

<comment><AUTHOR> Exactly.

</comment></comment></comment><comment><USER48> On the plus side, the really good companies who eschew shitty coding tests become even more attractive to good candidates.

If you are going to start a potential employment relationship by asking me to acquiesce so readily, it doesn't bode well.

</comment><comment><USER49> Why I won't hire you

1\. You want a high paying job but think you're too good to put in some effort in the interview.

</comment><comment><USER48> Next blog post from the hiring company "why we continue to moan that we can't find devs despite having a shitty coding test".

I am with the blog poster here - fuck you and your coding test.

I lowered myself to do one recently, we walked through it in the next stage interview, where it became apparent the " tech leads" were incompetent muppets, who were intimidated when they saw a better solution then they had as their "approved" answer. Walking through slowly with them why their solution had poorer performance at both low and high volume, I was left with the distinct impression that the vast majority of the incompetent devs who would fail fizzbuzz are somehow doing the hiring.

Scary times!

<comment><USER19> That's another advantage! If they hadn't given you the code test, maybe you wouldn't have found out you didn't want to work with them as quickly :-)

<comment><USER50> Nah, 10 minutes in a room doing live coding would have found that out faster than 3 hours of coding and 10 minutes in the room.</comment></comment></comment>


Ask HN: Which SSL? - <AUTHOR>

We're going to be releasing a mobile app soon, which will connect to our API hosted on AWS using Beanstalk.
We'll need SSL for the API, main website and admin panel.
I'm not sure which SSL certificate we should get, and if we should get multiple certificates or a wildcard certificate.
I saw a SSL service posted on HN recently - https://getssl.me/en - Would the Comodo WildCard SSL do?
Thanks <comment><USER2> If it's just for the API within your mobile app I would go for a self signed certificate. Make sure the app verifies that the signature is the correct one, and you should be good to go.

The reason I recommend this is because you are in control of the client, so you do not need to rely on a third party for trust. That, and it's free.

</comment><comment><USER3> Use current customer reviews to make your decision. SSL Shopper reveals who the best SSL providers are.

[http://www.sslshopper.com/certificate-authority- reviews.html](http://www.sslshopper.com/certificate-authority-reviews.html)

</comment><comment><USER4> [http://www.namecheap.com/ssl-certificates.aspx](http://www.namecheap.com/ssl- certificates.aspx)</comment>


Y Combinator Challenge #25 - Craigslist Competitor - <AUTHOR> http://astartupaday.wordpress.com/2008/09/17/y-combinator-challenge-25-craigslist-competitor/ <comment><USER2> The key to making a craigslist competitor is to take away the painful parts and the embarassing parts:

1\. Carrying your old school monitor to the post office to send it

2\. Meeting people face-to-face and that uncomfortable stilted conversation.

Solve those two problems.

<comment><USER3> meh, I just have them meet me at one of the rest stops on the parkway...they show up, give me the cash, I give them the stuff and I drive away.

Its public so no slasher worries for the buyer or seller.

<comment><USER2> Yes, _you_ do.

<comment><USER3> Well it doesn't hurt to have a CCW permit...or worst case scenario a tire iron within reach

</comment></comment></comment></comment><comment><USER4> I'm curious, has any company (IT or otherwise) ever beaten an incumbent with a long headstart & network effects _by creating their own walled garden_? I can't think of any, but surely there must be one.

<comment><USER5> MSN vs ICQ comes to mind. (note that AOL is a non-start for the other 5.7 billion people in the world) Facebook vs. Myspace?

<comment><USER4> Hmm facebook hasn't yet beaten myspace. I think MS vs lotus also works, though the network effects arent' as strong. I wonder whether all the examples are from microsoft.</comment></comment></comment>


Ask HN: Good software jobs other than web dev, for the self-taught? - <AUTHOR> I attended college, but got a BFA in electronic media which 99% of the world doesn't know about or acknowledge, and a lot of the CS basics I have taught myself. So I consider myself in the self-taught group.<p>Nine years after doing web dev I'm considering opening my options for other areas of programming. Most of what I see in the bootcamp or self-taught route has been web dev or mobile dev. What are other areas that I could probably break into? <comment><USER2> There is also stuff more to the system operations and deployment side of things, jobs like devOps Engineer, release engineering, site reliability engineering, etc.

Honestly, I really wish there were easier ways to go back and get a second bachelors degree or cheap masters degree for CS, for those of us with a Bachelors in another field and who are self taught. I don't need a boot camp, I've got the basics down, But I would definitely benefit from a credential like an MS or BS in CS, and it wouldn't hurt to have some additional instruction on things like constructing parsers, complex data structures (interval trees, k-d trees and other means of space partitioning) with an emphasis on what solutions exist for which problems, etc.

The later I can learn on my own, but a good teacher can speed learning tremendously, and help you retain material to boot. The academic credential, though, isn't something you can get through industry, which seems a shame when even places like starbucks have business degrees that use on the job training to substitute for classroom time.

<comment><USER3> There is an online Masters Degree in CS for a fraction of the cost of full- time attendance at Georgia Tech[1]. I think the requirement is any undergrad degree.

[https://www.omscs.gatech.edu](https://www.omscs.gatech.edu)

</comment></comment><comment><USER4> You have no limits as long as you're willing to learn. I'd ensure that even though you are self-taught, to ensure you understand the basics of CS like data-structures and algorithms.

Most engineers I've interviewed for engineering positions that were self- taught were very good at building working applications (That's how they learned), but sucked with fundamentals or writing something that is maintainable. I find that without a classical training, that development is unstructured, poorly estimated, barely tested, and brittle to changing requirements.

If you can prove you do not follow the same "gotchas," you'll be employable anywhere you meet their hiring bar.

For engineering, as long as you know what to do, it doesn't matter what your education is. That said, without a 4 year degree many programmers do not learn the "bits and bytes" or the vocabulary / science behind the applications they build.

TLDR - don't limit yourself based on what you think your degree will afford you.</comment>