skysight-inc/HackerNews huggingface dataset:
I'm actually taking the Applied Machine Learning class at Stanford, and I'll be honest - I'm a little disappointed that most of the content is delivered through video instead of lectures. I find it difficult to actually watch through the videos, mostly because there's no easy way for me to skim or jump around the content. I've actually ended up using the notes from the class I took last year (http://cs229.stanford.edu/materials.html) if I need to refresh my memory on the finer points.

Prof. Ng did remark that they decided to switch to videos because they saw dropping attendance rates in the past as students begin to utilize our remote learning solution later in the quarter (i.e. get lazy to go to class), but I wish that there was also a transcribed version of the videos that could be made available for people who prefer learning that way.
If anybody wants years of insight into the SaaS business model, look at reseller web hosting.

People have been reselling web hosting for more than 10 years now and it is, at its core, an SaaS model in a highly competitive space. You have monthly recurring income from customers who subscribe. You have to maintain and improve your service constantly, and support is a big part of the business. There is overhead, there is a lot of work involved, and it's very stressful.

Check out WebHostingTalk.com and just read about the ups, downs, pit-falls, successes, and problems people have been having for a long time and you'll learn a thing or two about what it's like to capture and keep subscribers.

When it comes to SaaS, the thing is, people leave, they cancel, and you have to let them go. They know what's best for their business, so you can't dwell on cancellations.

The only way you survive in this recurring revenue world is if you are acquiring faster than you are losing customers. It's pretty basic math.

I used to try SO HARD to keep those customers who were walking away. I felt bad about it.

Things change.

Today, if someone is leaving, I help them get where they are going if I can. I am not an obstacle. I'm that friendly face you are always welcome to return to if you don't find greener pastures.

You know what? I get A LOT of people back as years go by.
This.

I'd rather have waited an extra 25 seconds on every bundle install over the past year than being forced to manage gem dependencies manually for another year.
The 3G had 3G.

Edge/GPRS -> 3G data speeds is a massive improvement on it's own.
Christian Gheorghe's Tidemark: New Software on the New Platform
I created this app for visiting multiple sites you visit daily from one place:

http://www.morningtabs.com/

Give it a try.
I dont think any of the Android clients use the Instapaper API (http://www.instapaper.com/api/full) - they scrape the website, making it impossible to do things like sync reading postion across devices.

There is a decent Window Phone 7 client that uses the API - Stacks for Instapaper (http://www.stacksforinstapaper.com/) and one for HP/Palm webOS - Paper Mache (http://ryanwatkins.net/software/papermache/ - disclosure, its my app)

Interestingly the Terms of the Instapaper API prevent any integration with other "Read Later" apps, though Read It Later API terms do not seems to have this restriction.

"Apps must not include support for any other services that compete with or are substantially similar to Instapaper, unless the app uses only the “Add Bookmark” and/or “Verify Credentials” methods from this API. Instapaper reserves the right to decide whether another service or application is considered a competitor or substantially similar."
(http://www.instapaper.com/api/terms)
On average, you need 100 people to find two among them with one common fingerprint. Now calculate how many you need to find one among them that has a common fingerprint with a given person, i.e. you.
Ask HN: Books that cover the "SysAdmin issues" for web-start-ups
I was reading the article "I'll Probably Never Hire Another Pure SysAdmin" yesterday and kept wondering if there is a good book that covers all the sysadmin topics that typically occur in a start-up.

For my specific setup a book covering AWS, Chef/Puppet, deploying (to node.js) and monitoring would be nice. I know there are a lot of tutorials for specific topics out there, but I am looking for a general book presenting an all integrated solution.

I aim for comments recommending books covering all kind of topics regarding web-start-up server/cloud administration.
for a very graphic demonstration of the dangers of the larger magnets: http://www.geekologie.com/2009/02/guy_loses_finger_to_neodym... (WARNING: gore)
You can only dilute someone who owns shares.

I haven't seen any evidence here that he even owns any shares.
Google Buzz Gets The Ax, As Do Others In 'Fall Sweep'
A slight typo in the author's bit (which is fascinating), the Collatz sequence doesn't terminate in a series of 1's. By its definition, once 1 is reached, the series repeats {1,4,2,1,4....}. Thus, the number of steps required to reach 1 is called the "stopping time" of the sequence. See the Wikipedia article on the Collatz conjecture for some great visualizations of low seed value termination trajectories for the Collatz sequence:

http://en.wikipedia.org/wiki/Collatz_conjecture
I think a point also missed in the article is the startup notion of burning the midnight oil and pushing stuff live.

"Release early, release often" is great, but that same call to action can be what motivates people to push code live at 3am when they're tired, just finished it, and perhaps skipping QA.

Otherwise, I think the article as put is empty and seems more straw man. Assumes you have no confidence in your code, assumes it is complicated, assumes you can't roll back.

Simply put, deploy small stuff often, make plans for big stuff, and don't be stupid.
Hey.. it's totally safe to key in your Paypal username and password on a completely different site with a completely different graphical profile. That right there is a standard we need to set..

Also wouldn't it be trivial to make this pretty damn privacy invasive with the segmentation feature. I mean just profile when the site switches between the enumerations and you know pretty accurately what the average spend of people signing up for your site is. Combine that with a similar procedure for transactions per year and you have a decently accurate picture of spend / year. They might as well just have numbers instead of enumerations. I would not touch this with John Holmes' penis.
It's EASIER for Amazon produce a JK Rowling.

You sign up 10-100-1000 childrens writers, it costs you almost nothing. Then if one of them starts to get any traction through reviews, blogs, slashdotting etc you can very quickly and easily promote the hell out of them by simply putting them on the front page of Amazon.com or pushing suggested books at your customers.

Compare that to traditional publisher - it has to pick one author and spend a lot of time and money sending them on signing tours, book shop promotions, getting reviews in the NYT. So they have to spend 90% of it's money on the existing big names to be sure of a return.
I'm well aware of how DrRacket works; nonetheless, telling a newbie to type "lambda" will lead to typing, and telling them to type a lambda will lead to griping.

Also, the difficulty of typing lambdas also means that writing blogs about code, or documents, or emails, will require even more pain.
the Machine Learning class (at least for the Stanford students) also has a project component, so I'm sure a startup could see some use even from just having the graduates work on their problems for a research project, if nothing else! personally, I ended up doing two projects last year with data from my previous internship, and I think it's a great way to both have interesting problems and useful results.
But that will be bad for customers. You don't see the other manufacturers keeping the same phone for 2 years. Apple is making billions in profits per quarter, and you're saying it would be bad for them to make it more often than 2 years? Then why not 3 years to save even more money?

And if you don't think they needed to change the design of the phone this time, just take a look at this:

http://www.youtube.com/watch?feature=player_embedded&v=e...

No wonder nobody wanted to "copy" its design and build. It's so weak, even some plastic phones are more solid than it.
sexiest techstar companies, as distinct from the sexiest techstars
> This will involve some work to break the correct-sized piece of memory off some larger block, and some bookkeeping for later restoring that memory to the block and possibly enlarging the block, merging with others, etc.

This manual work incurs a penalty only for the developer, not for the performance. And you get to fine tune your memory allocations to your program's behavior.

> in a modern generational GC, a malloc typically consists of adjusting a single pointer to the nursery pool by the size requested.

Sure, but by "less efficient" I'm not only referring to allocation speed, but also to memory usage. That nursery pool is auto-managed, and not program specific (with the exception of some smart gc guesses).
I see you marked the cURL functions as "dangerous", advising people to disable curl_exec and curl_multi_exec. This disables all apps that do HTTP requests (except those that communicate through the socket functions). Is there any particular reason why you consider cURL problematic?
This is a mighty cool idea.
Along the same lines: http://octopress.org/

"Octopress is a framework designed by Brandon Mathis for Jekyll, the blog aware static site generator powering Github Pages. To start blogging with Jekyll, you have to write your own HTML templates, CSS, Javascripts and set up your configuration. But with Octopress All of that is already taken care of. Simply clone or fork Octopress, install dependencies and the theme, and you’re set."
Agreed. This is their best selling device yet. Apple isn't one to sit on its laurels, but why would they replace a flagship* product just 5 months after its introduction?

*(ignore that PPC iMac released before the Intel switch)
End of the line for Code Quarterly
Find a competent attorney who can work mainly on contingency and just sort the mess out. All the extortion junk sounds like a red herring. Prepare to be delighted by something well less than 20%.
What is necessary to start blogging | Blogger Party
Why are we celebrating irresponsible commit messages? Are people finding these to be that funny in the first place?

Here's a 5 minute talk from this year's Rocky Mountain Ruby conference that explains why good commit messages are important:

http://confreaks.net/videos/744-rockymtnruby2011-lightning-t...
The Shopify Fund - Supporting Indie App Developers
I cringe at the thought of putting versioning gates all over my code, but maybe that's the easiest solution.

What about having two code bases on your production server and having your web server (nginx) route the traffic accordingly? 85% goes to the current code base and 15% goes to the new one?

If that's possible it would seem pretty easy.
I believe this is a smart move by paypal. For the most part, they are a trusted brand on the Internet.

The few aspects I don't like are the domain name x.com and the actual website occupying that domain. x.com to me is too close to xxx.com and doesn't have any meaning besides being the shortest domain name. The website design is poor and the "win a bose" and "win an ipad" banners are atrocious. They should have used a subdomain of paypal.
But if you know the lab has a one in ten chance of screwing up the processing of my print, how can I trust the one in a large number of a match. The screw up may cause a one in five chance of matching with anybody.

Error rates are hugely important yet completely ignored in court.
I'm also curious how many $99 iPhone 4s and free 3GS Apple sold over the weekend.
How was PayPal able to get a single-letter dot com domain? I thought they were all reserved. But then there is x.org on the other hand too, hmm...
I think the focus should be on #2 "Push to Make All Financial Institutions Partnerships". If you read Michael Lewis and trace the history of these risky bets, it really comes down to skin in the game. When Goldman Sachs and other investment companies had partners that took hits with bad outcomes, they were in a lot more control and didn't try risky leveraged investments that were great short-term but potentially catastrophic. When these companies went public and a lot of their compensation was based on share price (with some golden parachutes), they started making a lot more in bubble environments and seemed to back short-term risky ventures that added to the bottom line.

So while CEO pay is a useful discussion, the real question in my mind is whether we should ever have a CEO of a publicly-held company that is "too big to fail" and can involve itself in risky highly-leveraged deals. It decouples the risk from the primary decision maker and that's reflected in the entire management chain down to the little guy that's risking the entire net worth of the company.
Science Fiction’s Take on the Future of Computers: Visionaries and Imaginaries
The Evolution of Relationships via Facebook
This is mostly just picking on someone else's somewhat clumsy screenshot-based tutorial on how to get started with rails.

But the broader point is, I think, pretty valid. Modern web development is a huge mess. Tool upon tool upon tool buries the core protocols, to the extent that newbies never even get a hint about how simple this all really is. It looks like voodoo.
Pretty sure you can just do the following by default on OS X:

gem install rails bundler && rails new app && cd app && bundle install && bundle exec rails server

http://localhost:3000

Whether or not you install XCode is specific to Mac, and always will be an issue due to lack of gcc by default. If you're on Ubuntu, it should be pretty easy to roll:

apt-get install ruby rubygems (or something to that effect)

IIRC, you don't even need a database created/migrated until you decide you need one.

I definitely think that Rails is harder to jump into now as a beginner due to the framework's evolution. However, these startup steps the author rants are all mostly "best practices" and not really necessary to jump in and start coding.
So, you do a crappy, unfair summarization of an article that, admittedly, isn't a great "intro to Rails," and this somehow gets to the front page of Hacker News?

To get Rails running on a Mac, you simply have to install XCode, run "sudo gem install rails && rails new blog." The included system Ruby will work OK for Rails dev (it's what I use 99% of the time just for convenience). If installing XCode and editing things freaks you out, then you may not be cut out for the level of coding required to actually use Rails. Things like Try Ruby, Shoes, Scratch, etc. exist for a reason; trying to shoehorn people into Rails too early is a Bad Thing™.

If you don't have a Mac, you can get running on Windows using RailsInstaller. If you're on Linux, I think it's fair to assume you know enough to install Ruby and friends with your package manager.

TL;DR: It's not crazy to get started with Rails; it's probably far less painless than most frameworks these days. And pointing to a fairly poorly written, overly verbose getting started guide and saying "ZOMG STARTING WITH RAILS IS KARAZEEEE!" is just stupid.
7. `[X new]` works.
The only semi-regularly updated ones I currently have in my RSS reader are:

- James Hague's "Programming in the 21st Century": http://prog21.dadgum.com/

- Edward Z. Yang's blog: http://blog.ezyang.com/

Rest of my daily blog hits I get via Hacker News and reddit/r/haskell
Siri Fantasy and Cloud control
I think of them as "speculative management" posts. Like the post here, they're usually written by someone with no direct experience in what they're talking about, and no responsibility for dealing with the problems that arise from following their advice. The posts are aspirational for group credibility (social proof), necessarily among those who also don't have direct experience in the topic. It's Monday Morning Quarterbacking every day of the week, or nerd watercooler b.s.'ing. "Why does NASA wait for certain weather in order to launch, don't they have confidence in their equipment/systems/pilots?"

As for your second question, if you have a load balancer, you can always take nodes out of it in order to update them, before re-enabling them in the LB and moving on to the next one. It's called a rolling upgrade, and the ease and details of doing such depend on the actual pieces involved.
Previous HN submission 20 days ago:

http://news.ycombinator.com/item?id=3040937
Don't forget the long-term contracts, where an enterprise signs onto the software for five years in exchange for a discount. That's probably the most common justification for "Why can't we have better service?" that I've seen IRL.
This was the conclusion me and a friend came to while there last week. Talking to some of the PayPal people, they understand this is a huge hurdle they have to clear to succeed. I'm not totally convinced they'll be able to clear it, though. If I can't give out information incrementally and in a way I'm comfortable with, I'll certainly not use it.
I'd be more interested to see national budgets compared to other national budgets than to family budgets.

Nobody expects a family to pay for military R&D, and many expect their government to. We abide the state precisely because it takes on these responsibilities.
This list doesn't seem to be about sexiest at all. Just which companies are furthest along and might raise big rounds.

Confused.
While humans will be fooled, the researches have not attempted to fool computers. I would think there would be some simple filtering you could perform on the image to detect the inserted objects.
I attended a git workshop by Scott Chacon and was surprised to learn that github's production site can be deployed by many folks on the development team, and at any time during the day. In fact, he mentioned that github.com can be updated as many as a dozen or more times per day as small features or fixes are pushed live.

There is a great description of their web server stack[1] that allows them to seamlessly push new code live without downtime (see the second Slow Deploys section.) It's a great idea about how to continue serving during a deployment, and I'm looking into using Unicorn like this for some projects I'm working on.

[1] https://github.com/blog/517-unicorn
They've had x.com for many years.
Publishers: What are you doing while Amazon eats your lunch?
Objective-C actually allows you to choose which string class you use as well using the compiler flag "-fconstant-string-class=class-name"

http://gcc.gnu.org/onlinedocs/gcc/Constant-string-objects.ht...
Here: http://www.androidpatterns.com/
Correction: The iPhone 4 was the best phone ever made. Now its the 4S. :)
I rarely have issues but is always a chance that something is going to go wrong, so everyone is sitting there waiting for the all clear. I was able to make the case that having developers, DBAs, and sysadmins sitting around in the middle of the night was counterproductive. It was fraught with tension during the middle of the night after a long day at work. Now we do it at 1pm on saturday, it is amlost leisurely now. Just a quick call to check in. Some people even call the voice bridge from the beach!
What Are You Going to do With Your iPhone 5 Domain Name?
Sometimes, it's cheaper to live with 10 minutes of scheduled maintenance at a low-traffic hour than to re-engineer your application to have 99.999% uptime.

Even if you have unit tests, continuous integration, a staging environment, and fast rollbacks, deploying to production can still be tricky:

1) Do you want to run MySQL, PostgreSQL, Oracle or SQL Server? Watch out for ALTER TABLE; it may sometimes hold table locks or invalidate open cursors. Of course, you could always rewrite your application to use a schema-free NoSQL database and migrate your records at read time. But that has a lot of consequences. Maybe 10 minutes of scheduled maintenance is an acceptable tradeoff?

2) Does your staging environment exactly match your production environment? Can you generate a full-sized, real-world load on your staging servers? Alternatively, have you built all the tools required for a phased deployment of your back end?

Now, I'm all in favor of deploying to production 5 times a day. That's pretty easy for any group with good unit test coverage and a fast rollback mechanism. But it's expensive to eliminate the occasional 10 minute maintenance window. And if you're going to take the site down for maintenance, it makes sense to do it at an off-peak hour.
Sometimes you really need to invoke external commands through exec(). In those cases, make sure to use escapeshellcmd() and escapeshellarg().
If you want to learn the core protocols, couldn't you just start off with basics? Static HTML pages, maybe a bit of PHP for a server-side intro? JavaScript on your simple HTML pages? Sinatra if you want to jump into a simple Ruby web-app DSL?

Pretty much all frameworks seem complicated to me next to the core protocols. However, that's why I use them: they abstract the core protocols that I already know how to use, and make me more productive. If you're just getting your feet wet, don't jump into abstractions, and get down to the basics.
Agreed. Elegant code is thin, tall and streamlined. Half as many lines as a quick-and-dirty wad.

If you have half as many lines of code,
-- it takes half as long to read it
-- it may be twice as easy to explain
-- you may be able to fit it all into your brain at once
-- it compiles faster
-- it may run faster

Remember the slowest processor on the planet is your wetware. That's the place where space and speed are critical factors.
Many of the 5by5 shows have morphed into "listen to a nerd rant for 60-90 minutes about boring topics"

If Dan could keep his "hosts" on a leash, introduce some structure, and cut the shows down to 30 minutes then they might have something that was more listenable.

Once they started spending 30+ minutes talking about "which Mac they should each buy to replace their current one" I had to stop listening. Siracusa is good, though.
x.com was Elon Musk's precursor to Paypal.
This is sort of frightening. Paypal has a recent history of locking people out of their own accounts as they layer upon layer of draconian "security" measures. These "security" measures seem designed to gather as much personal information as possible, and to restrict access to your funds as frequently as possible. I log into Paypal about four times per year, and each time its a frustrating tangle of new user agreements, forced requirements to add new security questions, and ridiculous restrictions. For example, when I decided I was going to move to a mobile phone-free life, Paypal decided they would force me to verify my account via SMS, but they cannot send SMS to google voice, so I spent 10 hours over four days to get access to my account.

Paypal is less trustworthy than Facebook or the federal government.
I wonder if there could be a model where an author releases a "beta" version of their book at a cheaper price and then "fixes" suggested by readers are then released for free to those who bought the original. A kind of group editing.

These days, a lot of writers write alpha versions as blog posts. Commenters and other bloggers provide suggestions of fixes.
I beg to differ. I started doing rails before things like bundler and rvm. It was easier to get started back then, but without these tools most people found themselves in a pile of shit really fast.

I think the mistake people are making is assuming that what is best practice for a trained professional should also be the starting point for someone that is just learning to do web dev.

It's like saying, "building skyscrapers is too hard, there's all this stuff you have to know. Why can't I just do it like I did when I was a kid and stack bricks on top of each other?".