skysight-inc/HackerNews huggingface dataset:
I would never consider Asus EEE obscure, are they not popular in the US? I remember seeing them a lot while traveling and weren't they the ones who started the whole netbook craze? They are the first thing that comes to mind when someone mentions a netbook.
The Evolution of the Textbook
hopefully not
I hear you. I stopped waiting for Perl 6 a long time ago; that has freed me to enjoy Perl 5 more fully. Most of the stuff I do these days is Perl with the Catalyst web and DBIx::Class database frameworks, but I like Rails a lot too and I use it when it's a good fit.

I like the Ruby language a lot; the whole method_missing system beats AUTOLOAD hacks and I like Ruby's standard classes and core libraries. The Smalltalk influence is nice too; I like when an "OO language" feels object-oriented all the way down.
Sherlock Holmes and Doctor Watson flying hot air balloon. They get lost, so they have to land. They have no idea where they are.
Sherlock Holmes asks passing by guy: "Excuse me sir, but where are we ?" Guy says: "You are in hot air balloon" and he walks away.

After some thinking Sherlock says : "That person was a mathematician". "How did you know that ?" asks Doctor Watson.
Sherlock Holmes replies: "Well first he gave a very precise answer, and second - the answer was completely useless"
hey, thanks! i agree, the user interface for hearts solo leaves something to be desired. me and my friend steph spiffed it up a little for hearts net. i think she's going to do another new "theme" for hearts solo as well, so i can release a new version of that.

are you one of those people who likes to shoot the moon a lot? i tried to make the robots a lot more resistant to that this time around. the number one complaint i heard from my really good players was that it was too easy to shoot the moon.

i think my best marketing leverage at the moment is that hearts solo has been downloaded 30,000 times. about 5k of those were upgrades when i released version 1.1.0, so that's 25k unique users. when i release a new version, all 25k of them will get notified by the app store downloader. i'm going to try charging 99 cents, and see how many of them go for it.
This is a good demonstration of why, if you're saving/archiving/safeguarding important code, that you save the code, the toolchain, environment and hardware. Important enough to make all that effort, anyway. Like maybe climate research code, that kind of important and long-term relevant.
>I would never consider Asus EEE obscure

I'd never heard of a multi-touch model before.

This is utterly beside the point. I just want the title of the post to link to the subject under discussion.

I don't want meta-discussion hand-wringing.

Just a link. This is YCNews, not the US Senate.
I agree with you regarding Perl, but you're completely wrong regarding Haskell and Python. Both languages, though high-level, allow direct unchecked access to pointers.

> I would be delighted to see you cause a segfault in Haskell without taking advantage of an implementation bug.

import Foreign
main = peek nullPtr

Or, more complicated but less obvious:

import Data.Typeable
import Data.ByteString

data Wrap a = Wrap a
deriving (Show)

instance Typeable (Wrap a) where
typeOf _ = typeOf ()

main = let Just (Wrap bad) = cast $ Wrap () in print (bad :: ByteString)

> Python has clean indentation baked in at the implementation. All major interpreted languages don't allow you to muck around with pointers.

>>> import ctypes as c
>>> c.string_at(0)
Segmentation fault
Pricing is a question of time. The iPod Touch launched at $300 and $400 price points. Now it starts at $199.

You're right about the pocket factor: The iPad is a gamble, of course, which is what makes it interesting. It's hard to know, without trying, how many people will trade the inconvenience of a larger device for much more screen real estate, higher performance, and optional 3G networking. All we know is that there's a market for netbooks, a market for Kindles, and a market for iPod Touches, which seems to suggest that the potential market for the iPad -- which is both like and not like each of these things -- is worth sampling.
Why should Adobe save Flash? They make money be selling developer tools. They don't necessarily need to save the Flash format. Their main dilemma is ensuring that sales of their tools does not drop, and instead continues to increase. One tactic I think they should pursue, is to make sure their developer tools can export to formats that consumer devices do support. If I were Adobe I would aggressively be pursuing a single checkbox build option for Flash projects to be exported to HTML5/JS/CSS not unlike how Apple implemented universal binaries. That would leapfrog them so far ahead of the competition that are stuck with more primitive tools to accomplish the same job that there would still be value in buying their tools.
Rob Pike on Systems Software Research (2000)
This isn't really part of the usual work environment. Just because you can import a library and go nuts with it doesn't mean it's an everyday part of the language.

I mean really, kind of missing the point don't you think?

It's not even like Haskell makes it trivial to mutate the pointers in a natively Von Neumann-esque manner.

Monads don't count either.

Example: how often have you seen unsafe C# code (pointers) used in a production web app?

Counterpart to the above: How often do you see pointers used in C? All the time

Presenting the pathological case isn't refuting what I'm saying, it's just affirming it by showing how far you have to go out of your way to abuse your memory access, whereas in C, it's just a part of how you code. (Functors, for example.)
I don't think a vast majority of the world is in agreement with you, and neither does AT&T; hence the paltry $15 monthly fee. People don't walk around with Bluetooth headsets attached to their heads so they can call you back at their leisure.
Wouldn't it seem likely that a future iPhone will use this new sim format? Would make sense, might force a few folks into the upgrade path.
And Twitter suspended the account within 3 minutes of it sending a tweet to each user when their results were ready. To a computer, that does look spammy.
If you become a supporter and give a donation for the service, you can keep your nick even if you don't log in. So, instead of complaining about a free service, he could have made a tax-deductible donation and not had any of these problems. Alas, lots of "could haves" in this whole episode.
It's an interesting experiment, but there are a lot of search aggregators out there, and they aren't very useful or profitable. If this is a business idea, I urge you to look elsewhere. If this is an exercise in programming, bravo.

Definitely have it display some results after I search though - the search paradigm is enter text, click go, get results. You just can't break that by adding another click, or you'll confuse everyone.
Essentially, managers put out fires.

Whenever I start feeling underemployed and unappreciated as a programmer, I look at what they do all day and feel thankful that I get paid to listen to some tunes, crank out a few lines of code and go home (where the real work begins).

The senior technical contact at my day job is a very experienced and accomplished programmer; however his entire day is spent traveling from one location to the next in meeting after meeting (a familiar story for many, I'm sure).

He dabbles in our project from time to time, and I think that's his only release from the mutual appreciation rituals he endures every day.
I like the idea, and I like the simplicity of the interface, but I was disappointed by the results. Most of my results were classified as "not spam," but a cursory inspection suggests that at least 70% were actually spam. Conversely, one of the three accounts marked as spam was definitely not spam.

As an example, here's one of the accounts that was marked as "not spam": @PhatApples (NSFW!)
Don't Be A Fatty (Rails Controller)
Just out of curiosity, do you use voice commands on your device and find them effective? I find manipulating a touch screen device to be faster and more accurate than dictating by voice.
In one of my early post-college jobs I landed at a small startup. We had something like 6 employees at the time. As my wife was still in PhD school, I was commuting a pretty good distance. So I figured: "I'll just start every day at home, make the drive after rush hour and leave for home before rush hour hits." I was essentially in the office for about 5 hours a day.

Lasted about a week before the MBA in the building pulled me aside and told me that wasn't going to work. The reason: the customer support guy also lived a long way out and he thought it wasn't fair that I was doing this.

Of course, one of the very reasons I was drawn to programming in the first place was the flexibility it came with as a job. I could be productive from almost anywhere... and why shouldn't I be? From my perspective, if he didn't like it, well he should think about a career change.

Now this was early 2002, which some might remember was a terrible time for actually finding jobs... so I reluctantly gave in. My commute went from roughly 30 minutes each way to 1-2 hours. I was miserable. That all changed after about a year as the company grew and I gradually slipped back into a better driving schedule.

It's still something that sticks with me today. Now that I own the company, I promote a results oriented environment that gives everyone the flexibility to come and go as they please. Sure we sometimes have to get everyone together for meetings, but it's hardly been an issue so far.
RubyRoast tastes better.
I don't disagree with anything you're saying. My assumption was that if the NHS was paying for it, then it was probably because doctors were recommending it on a case-by-case basis. But I haven't seen the data on how specifically it's being used.
I tested it out by clicking try it, and then copying the lyrics that were there and pasting them a few times (to see what happens when there are 3 times as many lyrics).

It looks like your app finds repeated sections (or paragraphs) in the lyrics, like choruses, and then is able to abbreviate the repeated occurances after to one grayed-out line. That's pretty cool, but it took way to much work on my part to figure it out.

Also, maybe it would be helpful to color-code the different sections (keeping the repeated sections the same color). When I'm playing an instrument, once I get to one of the grayed out parts that indicates it's a repeated section, I then have to hunt back through the sections to find the corresponding unabbreviated section. This is a hassle and kind of negates the benefits of not having to scroll (i.e. it distracts me and makes me pause my playing, just like scrolling does).

Other than that, I agree with the other comments that this is an MVP to the extreme, and I would not feel comfortable handing over my credit card info to a site that looks like this.
For something as dynamic as farm ville, what is more likely is just porting a farm ville client to iPhone/iPad vs. painfully recreating it in HTML so it can work badly on a smartphone screen. Most facebook apps in the beginning were HTML based. One of zynga's early, successful apps was mafia wars, a purely html game. The decision to create farmville in flash was completely intentional.
Steve Jobs and the Economics of Elitism
San Diego has much better weather than SF, yet there are no homeless there.

People there are more centrist/republican leaning. So Weather is not the reason bums come to SF. But the lunatic support the city gives to the homeless. Last time they counted, 2/3 of the homeless were not from California at all.
SF, is like a homeless mecca.

http://www.sfweekly.com/2009-12-16/news/the-worst-run-big-ci...
I believe China will be buying plenty of renewable energy capacity. From the article:

"China intends for wind, solar and biomass energy to represent 8 percent of its electricity generation capacity by 2020."

"Regulators have set mandates for power generation companies to use more renewable energy. Generous subsidies for consumers to install their own solar panels or solar water heaters have produced flurries of activity on rooftops across China."
I'd love to build a non-trivial operating system, but all I've made thus far has been written in assembler and extremely minimal.

If one wanted to bootstrap and get an OS running quickly, I wonder what the best approach or language would be?

Renraku is interesting just for the sake of the horror of building something on Mono/.NET.

I just wonder what kind of OS would result if you applied new-age MVC and rapid dev principles to the design of a new OS. Would the concept of a kernel even be totally relevant?
You probably should add a (2000) to the title.

I would really like to see Rob Pike's updated version of this.

He's right about the 'meat' of it though.

I thought that by now we'd be using some kind of ultra stable micro kernel based operating system, using message passing as the primary interface between components.

Instead, all we got was endless API calls.
Calling something "pointless, rambling navel gazing" is hardly vitriol. It's barely even mild contempt. There also is no argument to respond to, which I think was the parent's point.
"Why I Like the iPad"
This may become a factor in choosing a publisher for future books: the ability to avoid Microsoft Word altogether.

I can relate; writing a book in Word (or OOWriter) is an absolute nightmare. Never again.

(I am also having trouble imagining working on a computer while sitting in a Poang armchair. Your body is not at the right angle to look at something in front of you, really.)
I've written a complex ruby library and then ported it to perl. Since both languages are basically the same in their capabilities the port was very straightforward. I know both languages fairly well, but if I go back to the ruby version I can read it just fine, while if I look at the perl version it looks like a morass of symbol soup. The language has so much unnecessary syntactic noise that even what I would consider well-written Perl code that I've personally designed and written is still too difficult to read.

Also, from my personal experience, in general the average quality of Perl code I've seen, whether it's CPAN libraries or code at I see at work, is much less than the average quality Python and Ruby code I see, which is more of a community problem than a language one, although Perl being the way it is seems to attract a certain class of developers I would rather not have to work with.
FCC Part 15 approvals[1] cover all electronic devices, not just those that intentionally emit electromagnetic radiation. All computer equipment still needs approval before it can be sold to ensure that it doesn't unintentionally radiate excessively or in bands that can interfere with other equipment, and that it will still operate correctly when subjected to radiation from other equipment.

Further, the non-GSM iPad has WiFi, which brings it under the FCC approvals for wireless transmissions in unlicensed spectrum.

[1] http://en.wikipedia.org/wiki/Title_47_CFR_Part_15
This.

Before the crash I-Banking bonuses for first year Analysts at Big 4 firms were on the order of $80-100K each year. Assume you bank all of that each year and to be conservative, that it was 80K each year, you now have 320K. This will pay for all three years of Yale Law ($142.5K) and leave you enough to live on all through Law School. Presumably less selective schools cost less, so that's an upper limit.

As a 1L your internship oportunities are pretty limited, and I'm guessing that interning at a lower market firm doesn't really help that much for the internships you really want in 2L and mid-market firms won't trust you if you lie and say you're really enthusiastic about working for them because of blah.

Interns aren't all that productive because they have no experience with the law as it's practiced. First year associates aren't that hot, so internships are basically a hiring expense and it doesn't really pay until they're productive in second or third year.

An interesting internship, like with a startup could really help if you want to get into a firm in that space like Wilson Sonsini. Outside of that it could be positively harmful as a sign of outside interests and a life, not conducive to running up 2,000 billable hours a year. Most firms probably can't afford to be that selective though because most lawyers quit corporate law and go in-house counsel or something less soul crushing when they pay off their Law School loans and maybe build up a nest egg.

jwb119 probably isn't going to Law School for the money afterwards so much of that probably doesn't apply, but the how he can afford to make this offer does.
search and replace the 1s to 1.
gcc -o westley westley.c.

I had to run ./westley 5 some stuff

where 5 is a random number. Without the two additional arguments I get a segfault.
Ask HN: How to reach SMBs? and Which SMB targetted media do you consume?
I'm creating a product primarily targeted towards SMBs, and I'm wondering what methods you've had success with reaching out to SMBs (which magazines, online blogs, etc.)?
Ask HN: Where to incorporate as a Canadian expat?
I'm a Canadian, currently in America. I'm trying to decide where to incorporate, either federally in Canada, provincially, or in an American state (or oversees I guess).
Besides the standard tax concerns, my other concern is I'm not actually in Canada these days, and most of my banking is to be done in USD anyways. Does anyone have any experience with opening American bank/merchant accounts as a Canadian company?
This reminds me of the original Mahalo. We know how that turned out.
Pointers are absolutely part of the average Haskell and Python work environment -- it's impossible to get reasonable performance without them. Of course, Python programmers like to stick the important parts in an extension module (written in C, naturally), close their eyes, and pretend they're not doing anything "unsafe".

> It's not even like Haskell makes it trivial to mutate the pointers in a natively Von Neumann-esque manner.

Haskell has a module specifically for manipulating pointers[1]. There's no inherent safety in using Haskell rather than C for pointer based code.

> Monads don't count either.

This sentence makes no sense, and makes me think you've never (or seldom) used Haskell before.

> Example: how often have you seen unsafe C# code (pointers) used in a production web app?

Somewhat often -- pointers are used in database adapter, template engines, graphics rendering, and any code which needs to call into foreign libraries.

> Counterpart to the above: How often do you see pointers used in C? All the time

That's because C is used in code where performance is absolutely critical, which demands having control over memory layout and management. Pointers aren't a symptom of using C -- using C is a result of needing pointers.

[1] http://haskell.org/ghc/docs/latest/html/libraries/base-4.2.0...
The Perfect Size For An Agile Team - 1 Person - It's Crazy
To me this isn't about making phone calls over IP. This is about video conferencing over IP. I'm guessing that Apple has toyed with forward facing cameras in their iPhones and their iPads and I'd be willing to bet they pulled them from the iPad's launch so they could have something to refresh the iPad line up 9 months or so after launch. My guess is in iPhone OS 4, the next iPads and possibly the next iPhone will contain some sort of multitasking capable option, forward facing cameras and thus video supported communications. The iPad, in particular, will finally make video conferencing comfortable. In fact, I might call live video the iPad's killer app.
I've built a small OS, multitasking, window manager, the works.

It took me two years of my life but I learned more than I ever would have doing something else. It's good to have supportive people around you when you attempt something like this, and it also helps to have an old guitar push button wired up to your reset switch until you get it booting properly. You'll be resetting your machine lots of times.

I used the minix filesystem because it was very simple and I could fit the code to load the configuration and boot files in to a small boot loader.

I used an old 16 bit compiler for that part, PCs do not generally boot up in 'protected mode', so your first stage is spent on moving stuff from one side of the line to the other, then finally make the switch and continue from there.

The stages, iirc were:

- master boot loader

- partition boot loader

- file system boot loader (16 bit)

- system tasks (fs, idle, task (the scheduler) and a console driver running a shell)

Because the OS used message passing it was relatively easy to build and test the bits outside of the working os, after all as long as the messages were having the desired side-effects it was all good.

I used borland turboc for the 16 bit file system aware boot loader, and DJGPP for the boot strapping to a self-contained os. As soon as that worked and I was able to get GCC running on the other side I focused on recompiling everything from scratch until the binaries matched exactly with the ones I had been making in cross development mode, after that things went a lot faster.

That first stage took several months, I don't remember cursing so much in my whole life.

I wouldn't trade that time for anything though, it was better than any other programming experience before or after.

The OS I wrote was a functional equivalent of QnX, at the time only available for the 286, and I very much wanted a 386 version.

Several others had a hand in there, Marcel Wouters completely re-wrote the console driver, and a large part of the window manager was based on a list package that was written by another friend.

For networking I used the ne2000 driver from the freebsd project with a bunch of tweaks to get it to work as a user process.

The hardest part of the whole thing was to get a hard-realtime response on interrupts in user processes.
Bup 0.07: backups can now recover from file corruption
The problem I see with that is if you're going to lug something that size around a macbook air is 3 times as expensive, but a run-of-the-mill netbook is more powerful and a lot cheaper.
I just finished reading "Gray Hat Python". It was pretty interesting talking about fuzzers, and injection stuff. Is that what you guys do?
If you authorize the requests, you'll get a boost of the individual user's available requests after you run out of whitelist API requests for your IP (20000 + (users * 150)). Also, make sure you're using the api.twitter.com/1/ URL format, as they're going to be upping the rate limit for users to 1000 "soon" (it was announced at Le Web 1.75 months ago...).

Also, that only applies to OAuth, so you should get on that boat soon. They're deprecating basic auth this summer.
Robotics Introduction
"Due to the reservoir effect, the day 40 years ago was longer than today by about 8 millionths of a second," says Chao
He expands on the blog post that gives just the street name example. The combination of methods are different to arrive at the desired outcome. Reminds me of programming and problem solving. Sometimes it helps to rethink the problem. There may be multiple ways - each having their own advantages and disadvantages.