skysight-inc/HackerNews huggingface dataset:
Experience matters a lot in software development. For example, after many years as a software developer this is one of the valuable lessons I've learned:

Outside data is ALWAYS dirty.

There is no clean data. And part of the value of experience is knowing how to handle this. For example, assume I get a very large data set from a third party that is crucial to my project. Unfortunately, all the fields are strings. Years of experience have taught me the following ways to deal with this:

1) Implement a lot of logic and validation into the program itself or as a pre-process step. This is a lot of work, requires a lot of domain knowledge, you may still miss a few edge cases, it will force the deadline to be pushed back, and increase the budget. However, those are the disadvantages. The advantages are that this could become a competitive advantage. Maybe no one else knows or has tried to clean up this data before. Identifying and doing this work can lead to a whole new business. A classic example of this is GIS data. GIS data is very very dirty. Street, St, St., Highway, Hwy, Freeway, Fwy, all typical examples of how dirty the data is. Companies like Navteq are based on their ability to clean up GIS data. Apple's Map app was a disaster because Google is so good at and has years of experience cleaning up GIS data.

2) Push back on the third party to clean up their data. Doing this takes some finesse and social/business skills. You can't just say, the data is hard to handle. That sounds like whining and laziness. Your manager can't do anything to help you if that's all you have. Instead one tactic is to make a schema (this is what WSDL and XML Schemas were invented for) and tell the third party that their data must conform. Then it becomes their problem. They might push back, but now your manager has something to fight with. But if they agree to conform and the schema is bad, then it will become your fault (the third party will just say, hey it conforms to your schema so that's your problem). So you better make sure the schema is good (experience helps here). And it may require meetings with the third party's technical team to compromise or figure out what a good schema is (which requires social/business skills and experience).

3) Identifying these problems early. If these data issues are not considered or found early, they will lead to big issues later. This is why senior developers get their work done fast and go home early. They don't make mistakes like using floats for currency or assuming a string is always a certain format. Junior developers make those kinds of mistakes and spend 80 hour weeks fixing it in the code, rewriting unit tests, and running scripts against the database to carefully migrate the data. They may seem more "productive" but they created the work (like the broken windows fallacy).
>Following that, perhaps for 2.12, Odersky recently proposed on Twitter a revision of the type system that had FP devotees up in arms since the proposed change removes some of the complexity that makes libraries like Scalaz possible.

What is the proposed change, exactly? Do you have more information?
Another problem (symptom or cause? I'm not sure) was how we prioritized things.

When I started, there was P1, which was only used if production was effectively down, P2, which meant it had to go in the next release, and P3 and on down.

Of course everybody had issues they really wanted fixed - more than we could do. People realized that P3 bugs stood a good chance of missing the release - and might not get fixed for the better part of a year if they did.

So almost all bugs started becoming P2.

This obviously didn't work, so to supplement that, we had a system of "Shadow priority" - that is, there'd be P2 tickets that "important" managers really cared about and thus had to get done. This got a bit tiring because of the number of managers and their shifting priorities. I remember a spreadsheet where the rows highlighted in green were "true" P2s.

Thus we created a new priority field, "relative importance", because everything was P2...

And guess what, the process repeated; everything became high relative importance.

By the time I left - and I did send an email complaining about this to my boss - I think we were up to 5 different places to look for priority, including a spreadsheet that would be shown at meetings but not circulated. The logic for figuring out priority was incredibly complicated, since certain types of priority overrode others. There might be P3s that were more important than P2s because they were the pet issue of a certain manager, for instance. There was a separate notion of "QA Priority" and "Manager Priority" (manager priority, on the spreadsheet, even had P0)

Of course, what developers thought never was a big consideration.

For the longest time, I just thought it was the inevitable result of bureaucracy, and yet, here I sit at a job where, for almost 5 months, we've had a backlog that we all are involved in creating; the priorities and rationale are explained to us... and best of all, the most important things are at the top! That's all I need to do, look at the top of the backlog.

And somehow I spend almost no time waiting on requirements, and none waiting on "database" (which isn't even a team). Fixes I make get reviewed a week later at the absolute latest.

I'm not sure why, exactly, this is. Clearly our situation is more desirable - so why did the old one happen at all? I don't feel like any of the teams at my old company were incompetent, evil, or stubborn. It was just the way we did things.

(:With the possible exception of the sworn enemies of the dev team, ProdOps née SOC AKA the SysAdmins. But then, the inter-team rivalry was more of a symptom than an actual cause.)
This is not correct comparison. Since you provide services locally you should know local laws and tax code. AirBnB just provides a platform for you to provide the services, but I don't see how it is feasible for them to ensure that each their service provider follows all laws in each location.
Why is that? So if I have several backups of my bitcoin wallet, and I spend from one of them, the others become invalid, so I'd have to keep updating them? Isn't it just a private key you are storing that would not ever change? So if they were able to get to the private key why would they not be able to spend even if he has spent some on the backup?
Financial modeling: Tips, best practices, and ways to save your sanity
These arguments don't work when you have supply limitations, which with housing and cars we kinda do.

It's not about taxing the rich. It's about taxing where appropriate to get the market effects you want.

This is the same reason we have such high tax on cigarettes.
I heard Hotmail (now Outlook.com?) runs on Linux servers?
It's just a matter of specialization, is all. Not exclusivity. My interest in web development originally stemmed from design, and I am much stronger working on the front-end, as my passion is in UX.

That being said, I absolutely aspire to be a full-stack engineer, and I'm having fun working towards that goal. I agree that somebody unwilling (let alone, not enthused!) to learn the full stack would make for a horrible programmer.
Cool. What's the difference between the shades of blue?
Sparkcentral Raises $4.5 Million
Excellent comment/reply. Kanban is a tool, but its not a solution to a cultural problem.
Misleading title is misleading. Server-side rendering is an approach already used by people who know what they're doing with webapps.

Nice approach but linkbaity title bro.
I never implied they were. They're designed exactly to let you test out of those introductory classes you think "won't teach you anything" you don't already know.
I'm the best programmer on earth, you fucken nigger. That's why God chose me to make His temple. I have divine intellect.

God says...
necessarily remembereth bear news_to_me intelligence reverse_engineer
divisions passions suitable men's bark little_fish power
well-nigh mock is arrived solicited VIII mist hateful
knowing absetively_posilutely queen true-speaking listen_buddy
evaporates temptation recount advice averred interposed
*This case linger Body apprehend breathedst mantles
transcribe gay
Filamaker Recycle your old 3D prints and turn waste into things
Then it would be time to buy (after the sell went through).
I believe Google does NOT use MS products, and I hear they make close to 66% of total MS revenue these days. ;)
Great point.

If you're specializing in webdev, it cannot hurt to look beyond and make contingency plans if this turns out to be true. You don't want to get laid off unexpectedly and find yourself technically lacking. What I mean by this: find a more specialized area and see if it's interesting. Could be mobile, machine learning, compilers, etc. Don't be scared of systems programming -- it may come back with a vengeance.

FWIW, webdev has smelled of commoditization and 'cheap' devs for a little bit to me, and it's scary. Everyone gets screwed by this; especially as you get older.
Adaptive optics
Devil advocating:

I coded exclusively in javascript from 2006-2011. Most of that time was spent at Meebo, where we authored one of the most sophisticated JS application in existence at the time. It was great stuff!

I've worked extensively with node.js 2011-mid2013, launching multiple backends written partially and exclusively in node. Lots of fun!

On https://github.com/marcuswestin I maintain multiple widely used open source projects, much of it JS.

In the past 4 weeks I've rewritten my current product's entire nodejs backend to a statically typed language. Why? Because static type analysis allows you to develop more accurate code faster and with lower maintenance cost.

I've been a strong advocate for "javascript everywhere" for a long time. However, these days I believe that there is exactly one fantastic use case for javascript: delivering rich application experiences in web browsers.

So you may be right: perhaps this line of arguing is fading. But in that case I'm a real outlier.

(and with all that said, the most important thing to consider is this: what tool will best allow you and your team to build and maintain your intended product?)
I agree entirely, embracing the 1% is the way to go. Without them you can only see progress measured in decades, not years.
I addressed this point in the third sentence: "[Researchers] will raise a stink if the journal starts to suck."
I'd argue those are pretty niche. I certainly wouldn't focus on browser development unless I worked for one of the three or four big browser vendors.

Text editors have been moved onto the web, and probably more and more text editing is being done online, for example in Wordpress blogs.

Nothing against "native" text editors, but again, how promising would it be to start out developing a new text editor these days? It still happens, but it is rare enough to get the top HN slot when it happens.
I think Typescript solves a lot of these problems. The type system is amazing, conversions are explicit. Syntax is slightly improved, built-in class system.

The others I don't really mind: I like writing event-loop code over threads, and have never once run into Object.prototype problems in the wild.
Clojure is a lisp, but that's not why it's coherent. It's coherent because it has a clear model of data, state, abstraction and computation. It's not only clear, but (like Erlang) resembles the way people think about the world and about computation.
Does anyone know if doing this masters will count in front of USA immigration department? In other words will this degree move me from EB3 to EB2 category in Green Card application: http://www.murthy.com/2011/07/15/eb2-or-eb3-understanding-th... .
Masters from the school where I did bachelor's degree only counts as bachelor degree in USA, so it would be very important factor for some people.
I always thought this limitation came from NTFS, or at least a previous version of.

Maybe this might be resolved in the gradual move to ReFS which I am under the impression is the long term future of the windows world.
Go with what the team is familiar with. If team is familar with MS stack, you can keep web layer in ASP.Net MVC/IIS/Windows. This will keep dev team very productive using Visual Studio/Windows combination and use open source products on linux in other layers like HA proxy for load balancer, varnish for reverse proxy, postgres/mongodb on linux for database/nosql. Stack overflow has had good success using similar approach.
This VC-funded light-tech bubble is a gigantic bike shed.

The problem is that a VC who "sees things in people" (usually, only young white male people from Stanford) can't evaluate them for the skill and expertise to build a new dialysis machine, anti-lock brake system, or graphics card. It's actually hard, from an armchair perspective, to know what should and should not be built unless one is in those "unsexy" industries, much less evaluate people for the competence to execute, when you don't know that stuff yourself.

On the other hand, for trivialities, the "we invest in people, not businesses" morons can get to believe that they have all the relevant information. (I doubt their judgment of character is nearly as good as they think it is, but that's another discussion.)

Additionally, the hottest VCs are the ones who can garner the highest social in-degree, and that means they have to be in the light-tech space where they could conceivably fund anyone (even an idiot). Most people are ignoring the rest of technology and focusing on the low-grade light tech (where the age discrimination is worst) that is closer to marketing than engineering.

See, if you ask a hundred people whether self-driving cars are technically feasible now (much less, what algorithms one would use to train them) 99 will say they have no idea. On the other hand, every idiot in the Valley has a strong opinion of whether Twitter, Tumblr, Uber, et al deserve to get another round of funding, an acquisition or IPO, etc.

You get the age discrimination in the bike-shed world, which isn't really technology if you ask me. In real technology, people know better than to turn away talent over something so trivial.
Except that the MS CLR is way faster than the Mono CLR (especially under 'weird' loads like what a financial institution might face...)
The article is from the blog of a Mac only program and it's content is targeted at iOS developers. Windows users aren't remotely in the target market for the article.
When Frog Design met Steve Jobs
This is great! I realy like the audio and how good they sound mixed/matched. This would be a really cool compliment to the awesome chrome extension 'Currently'
Hopefully? The site has a contact link. Why post your asinine one-upmanship here where it is of no relevance to the discussion?
A better question for you is, why not?
> It is absolutely the case that you will find managers who make everything priority 1, ignore problems for far too long, keep piling features into dreadnaught-sized releases, etc. The only thing which can change that is a different manager

But Kanban doesn't let them. You are required to prioritize upcoming cards in a linear order, not equally. Limiting work in progress is literally the definition of Kanban. If your manager won't do that, it's not that Kanban isn't solving your problems, it's that your manager isn't adopting Kanban.
I'll add a label for this - different shades of blue represent different reasons workers are furlough-exempt. Namely they are either necessary to protect life and property, or their funding comes from somewhere else rather than the appropriations bill.
> There's nothing inherently wrong with the language that prevents you from writing sufficiently complex and reliable systems to power something like a shopping cart, or anything else for that matter.

In other words, it's Turing complete. That's great but not exactly an argument for using JS server-side so much as a reason why it is possible. I love JS, but I also know what it was designed for.
75% of Young Donors Turned Off by Out-of-Date Web Sites
Because if two people have a copy of the wallet file, you've got a situation which is essentially impossible with physical currency.

I'd liken it to two physical credit cards with the same number, but that's a poor analogue as the feds can just ring the card company and have the account seized regardless of the physical "pointers" to that data.

Bitcoin, access to the wallet file = access to the funds, at least until there's a spend. I believe that makes it rather unique.
An engineering school that teaches a course in PHP instead of more fundamental and core languages such as C, Java, or even Python is shortchanging their students because they don't learn fundamentals. If I may offer an analogy... There is lots of money to be made in the field of IT and computer science work, just like there is a lot of money to be made in drilling for oil. Teaching C, Java, or Python is like teaching Geology and how to find the oil and how to refine it. It is fundamental. It is the process and the core of the business. PHP is like teaching your students how to work on an oil rig. Fast money. They will probably never have a real stake in the business. They will always be stuck as just, "workers".
I thought I was the only one using C# and Postgres. Secret's out!
http://msdn.microsoft.com/en-us/library/aa365247%28VS.85%29....

http://stackoverflow.com/questions/1880321/why-does-the-260-...

http://www.codinghorror.com/blog/2006/11/filesystem-paths-ho...

Summary: The assumption has been baked in forever and changing it is Non-Trivial. Workarounds exist though! (Kind of.)
And I think that's because they've convinced themselves that things are never going to get any better.

They're completely and utterly wrong about that. But to get there would involve taking a new approach to getting out of whatever circumstances got them where they are and most will never do so. The few that do will become the next generation's rags to riches stories.
How to Use Instagram for Content Marketing Before Ads Start Appearing?
Java is very different ecosystem to the .Net world. First, the VMs have have been more performant on the Java side (this might have changed very recently, but this was definitely the case 2-3 years ago). Second, there's a big OSS world around Java, and a not as big one around .Net. Third, Java-OSX/Linux, .Net-Windows.

I think the .Net framework and language one of MS's best products in decades. Heljsberg is brilliant. :)
Both Chicago and Philadelphia will go bankrupt and all bets are off. They are heavily corrupt municipalities. The pension obligations will not be met. New condos here and there don't really enter into it.
This is now my favourite app ever. The color change is a nice touch, but this is sadly going to be wasted since I'm going to use that in a background tab. They may also want to take a look at something like favico.js to animate the favico's colour.
It's annoying, but it's not much different from seeing the BIOS screen on an old Wintel machine. It still starts up quickly enough that I'm more likely to turn it off than to sleep it.
Why does it terrify you?
You Can Be an Entrepreneur--and Not Get Divorced
How to Create Employee Loyalty in Your Business
That doesn't sound very easy.
Chill, it's probably a typo.

They had it one phrasing and then the editor got on their back about no one knowing what 600k BTC means, so they started to add the dollar value, then put it in front but forgot to fix the circulation percentage to make sense.

This isn't unheard of, and they're probably not an idiot.
Interesting points. I think we fundamentally agree but I've ended up with lower expectations for hotels than you. What I've gotten from cheap traveller's motels sounds like precisely what you're describing, which is a lot like a lot of the AirBnB-for-profit places I've stayed in terms of service.

I do agree that AirBnB has been generally superior to hotel-hunting and that the review system is powerful. And I completely agree that as a guest AirBnB is superior to regulated short-term rentals, especially in the places where the host goes above-and-beyond to be available and/or provide local tips and flavor.

I certainly wouldn't advocate that AirBnB get rid of whole-apartment rentals because they're not a good guest experience - much to the contrary it's always been great for me. But I think AirBnB are going to be up against the wall soon legally, at least in major metropolis areas, and eliminating the hotel-style whole-apartment rentals could be one solution.
Maybe SDKs are better than bad APIs, but a good, truly RESTful API has the power and ease of use you seem to see it SDKs. The problem is the lack of good APIs. Returning a JSON list isn't enough anymore. The presentation [1] by apigee on RESTful APIs sums it up quite well.

I also disagree with this:

> "SDKs [...] abstract the detail of underlying communications"

Sure they do, but so does the Python Requests module for APIs. If anything, SDKs are more limited by their abstractions, when the abstractions are tied to a specific platform. APIs are about opening up data to be consumed programmatically by any client that can curl a URL, like the fabled microwave that runs 'nix.

[1] http://www.slideshare.net/apigee/restful-api-design-second-e...
Why does Brazil's productivity suck?
This might be a naive question, but why is this so inexpensive? Don't get me wrong, education is definitely way more expensive than it "should" be, but I recently started a Master's in CS at DePaul and $7,000 for the whole degree is a fraction of what I'm paying.

I understand DePaul is private and expensive anyway, but $134 per credit hour is still far and away cheaper than anywhere else I've seen while I was looking for schools to apply to, even in-state public schools.
Do you rip video on the page too? If so, I would definitely use this service. I've got videos with my company brand a bit everywhere and I can't find a good way to download it or link to it so that it stay there permanently.
One problem I can see with that is you have to be very careful that your hashes (x_i, y_i) don't make it more attractive to, say, solve the n-1th computation (similar to brute-forcing a password hash) than to do the first 1..n-1 computations properly.
You shouldn't be allowed in right now because with your experience you would be unlikely to succeed.

This is intended to be a serious master's degree from a top ten university for people with strong practical knowledge. Unless you are a brilliant student, it will be very hard for you to pass the initial courses - those required to continue - especially because you probably will not be doing this full time. It's unlikely that you're a brilliant student because you chose to study journalism. I made the same mistake.

Udacity failed in their first attempt at accredited online courses with San Jose State. This was attributed to unprepared students with full time jobs.

Georgia Tech can't accept this. So for the demonstration classes over the next few years, they'll carefully choose the most motivated and capable people from all over the world.

That said, MOOCs likely respect the work of other MOOCs, and there are lots of courses on programming available. Udacity already has great ones (i'm currently taking debugging), and even these can be difficult to complete on time.

So it seems like using these to develop the discipline to complete the courses will be perfect preparation for you to take the Master's.

And when they begin to accept more students, they'll likely start looking closely at those who show demonstrated aptitude for working through online courseware.
I've got my install documented (and scripted) here:

https://github.com/appsforartists/pixel_webdev

It uses crouton to setup a bare minimum dev environment, using Sublime as the editor. It's designed for people who use ChromeOS for most things, but want a good text editor on top of that.