skysight-inc/HackerNews huggingface dataset:
"... You may actually discover that your customers actually want to host the software themselves, even though it’s a web app, in which case you have to do #terrible things# [0] to make your dorkus malorkus customers happy. ..."

When I read this bit with link to the Joel on Software article on Wasabi I realised the author missed the finer point of why. From Joels article ...

"... And we have the ability to add any feature to the language that we want easily... this is the same power Paul Graham talks about in On Lisp, the power to invent new language features that suit your exact application domain. Lisp does this through a mechanism called macros. ..." [1]

Wasabi was a summer project by a super bright Intern who created a real compiler. [2] Meaning if the need arises to port the application to another language it can be done. For the price a one summers project Wasabi FogCreek can change languages without major re-writes. Wasabi also means the source code can be released. The customers get the benefit of access to the code they run. FogCreek still get to charge hard cash.

Never underestimate Joel.

[0] Wasabi, http://www.joelonsoftware.com/items/2006/09/01b.html

[1] Wasabi, Ibid

[2] You can read more "Up the tata without a tutu" ~ http://www.joelonsoftware.com/articles/fog0000000026.html
losers like this are why I quit using rails. well, that and the whole ungodly slowness thing.

rails doesn't provide any facility for testing the stuff that is actually hard to test - the frontend javascript/flash/ui layer. it makes it easy to test stuff that shouldn't need testing.
GNU Emacs. :)
I've learned Haskell by reading online tutorials and articles, but a new book (Real World Haskell) will be published and will likely be a good introduction to Haskell.
The trick is, don't make conclusions about the article based on its title.

I found comfort in his anger towards the difficulty of developing for current web application platforms. The situation is obscenely bad.
The downside is, if your company is failing then you kill yourself.
I can see the benefit of Comet in this case but I don't see the benefit of Flash. Please could you explain.
Since 'cat > foo.py' erases foo.py, you are obviously lying about that error message.
Notepad2: http://www.flos-freeware.ch/
The new Microsoft Download Website Beta
I think most people, myself included, already use a same password on multiple sites. Not saying it's particularly security-conscious, just that it's already what a lot of people do.

Also, they said you can use multiple openID accounts if you want, so you could still have different password for each site if you so choose.

So, I think your point is moot.
Don't bother obsfucating. A good programmer could make equivalent functionality without seeing a line of code. As an example, if you're familiar with a spreadsheet application then you can code the core functionality without reference to the original source. Is your script more complicated than a spreadsheet?
You said it. I checked out the Erlang tutorial just now, and apparently you can't use user-defined functions in the test-expression of a conditional, to prevent people from putting side-effecty functions in there? Now maybe there's some good reason for that, that has to do with the mysteries of handling concurrency or something, but it gives me the prima-facie feeling of java for the fp crowd.
"On the Creation and Maintenance of Hype" (video)
The Javascript Compressor ( http://javascriptcompressor.com/ ) can compress and obfuscate Javascript code.
I used textpad for years, recently switched to notepad++ and am very happy.
Google considered fusion ( http://video.google.com/videoplay?docid=1996321846673788606&... ).
The article mentions that the fnid could be stored in a cookie. While this is true it definitely would not be desired, as doing so would make it impossible to browse the site with multiple windows,each on different pages.
Mostly the reason for that is to allow the compiler to optimise the order of evaluation of the conditions. If you could put functions with side-effects in there then it would be impossible to do that since the compiler would have to guarantee some kind of consistent evaluation order.

There have been proposals for some way to mark user-defined functions as side-effect free and thus allow them to be used in guards. None has had acceptance from the core Erlang developers yet.

In any case this is not usually too much of a problem. The Erlang idiom is to use 'case' instead of 'if' in most cases (no pun intended) and where a calculated value is needed then just assign it to a variable beforehand - not quite as pretty I agree but no big deal.
How Vista launches programs - or, a detailed analysis of how precisely not to launch programs
Sniff browser history for improved user experience
Wow! Great site. Kudos to you guys...
Real programmers use... http://xkcd.com/378/
You're not seeing the potential of the web anymore than the original writer does. The web provides utility computing, the box on your desk does not. As soon as we lose this horse/buggy mindset and start noodling on the issues of 1) proof of correctness in code, 2) fault mitigation or absorption, and 3) true concurrency (grab a unit of computing power wherever it is), utility computing will absolutely render the desktop obsolete for any computing problem -- yep any computing problem. Right now, that Google facility in The Dalles can compute anything faster than what you can do on your desktop for less money. The fastest video card you can buy for your Dell will do one TFlop -- SETI@Home claims to be averaging 408 TFlops from a volunteer project. This is the law of economics kicking in, where money spent and efficiency desired cross, and it will kill the traditional desktop.
Web-based software also allows you to constantly update your software without even making the user aware that the software is getting updated. To my mind, that is one of the biggest advantages of web-based software and one of the reasons why it will ultimately kill most forms of "desktop" software.
losers like this are why I quit using rails.

Yeah, this blog post was definitely inflammatory . . .

well, that and the whole ungodly slowness thing.

That's pure FUD -- it's nowhere near as slow as you imply.

rails doesn't provide any facility for testing the stuff that is actually hard to test - the frontend javascript/flash/ui layer.

That's not true. Every popular testing library for Rails (stock or third-party) has view testing. I noticed you threw in Flash. Do you really expect your web application framework to test your Flash files? What would that look like?

it makes it easy to test stuff that shouldn't need testing.

Your domain modeling, controllers, and all-around application logic shouldn't need testing?
I see this as just publicity piece for Seattle. The cities, here and abroad, that advertise themselves as the next Silicon Valley are a dime a dozen. They’re looking to create buzz and interest among possible investors. The primary information for investors here -- those people, who want to make Seattle the next Silicon Valley, lack imagination.
Software that doesn't need testing - that doesn't exist I am afraid.

The UI is a different ball game (and as browsers evolve it will continuously change), and there are tools out there to solve it in some way or another. With the Rails tests, at least you have confidence that your backend is correct which is probably 80% of the battle.

Also, the value of automated tests in general is to give you confidence that the small change you just made didn't break something else!
Funny, my answer to the original question is "git-svn".

It has been working great for me. See the guide here:

http://tsunanet.blogspot.com/2007/07/learning-git-svn-in-5mi...
How to Speak - notes from Patrick Winston lecture
Thanks everyone :)
If you don't mind online reading, there are a number of manuals at the OCaml website:
http://caml.inria.fr/resources/doc/index.en.html
At the top of his follow on article he says it isn't good for server applications, but he'd use it for client side.
Command line works for me. I have done some tinkering with TortiseSVN but I am generally not on Windows, so the command line is the most common.
On the library side, Yegge says it can call out to C and Perl fairly easily.

As long as languages can do that, I don't see what the big deal library support is. Maybe it's just the extra tedium or something.
Patrick Winston is one of my favorite people -- really great guy.
Write some scripts (batch files).
The back in time ability sounds pretty cool. I've wondered whether any debuggers implement that idea. I also like the idea of an extensible grammar (and syntax too, right?) I think pg should allow arc's syntax to be extended; which I remember him saying he'd do somewhere, but I haven't been able to find the quote since.
The fact that Textmate doesn't run on Windows is exactly why I stayed away from it on OS X - I am forced to use a windows machine at work, and am stuck in a terminal a lot of the time, so I decided to learn emacs instead.

Once you get over the initial Emacs learning curve its great - then install the emacs code browser, and the rails plugins (if you do rails obviously) for extra productivity. See [this tutorial](http://sodonnell.wordpress.com/the-emacs-newbie-guide-for-ra...) to set it all up.
Cal Newport's not a bad guy either.
Just upvoting ViM is not enough, so I put in this note. I have used Emacs and ViM and I am with ViM forever...
For the windows build see here:
http://ourcomments.org/Emacs/EmacsW32.html

This is the emacs wiki page on emacs for windows:
http://www.emacswiki.org/cgi-bin/wiki/EmacsForWindows
vc-mode in emacs
Maximalized Pandas
There is a vi mode in emacs, though it just replicates the keybindings:
http://www.emacswiki.org/cgi-bin/wiki/ViperMode
I thought like Comet, Flash can send data asynchronously. the client doesn't have to continually poll the server. Am I wrong?
新年快乐！
Having two years of experience in an application or standard is a bad practice propagated by recruitment specialists. It takes a good programmer to spot a lesser programmer. (There are plenty of cases where lesser programmers look equally good or better to management.)

This forum is accessed by people who are above average programmers. Therefore, we'd be above average at spotting good programmers. Therefore, we'd be better at doing recruitment for programmers. So, what stops you from making a very good income from recruiting programmers in a existing company? Well, I researched this problem and I discovered the answer: you don't have two years experience in recruitment. Furthermore, during this investigation, I discovered that recruitment companies specialise to the extent that they outsource the recruitment of recruitment specialists.

Yep, that's right. Recruitment companies find it beneficial to outsource the recruitment of their own staff. And what stops you becoming a recruiter specialising in recruitment? Well, d'oh, you don't have two years experience. So, anyone could be a recruiter's recruiter - if they have two years experience. Based on this profound knowledge they can recruit or become technical recruiters. So, if you ever had the suspicion that recruiters just match buzzwords then you're right. If you ever had the suspicion that you could do the job better then you're right.

It is from this situation that recruiters demand two years of experience in an application or standard which has just been released. It is from this situation that human resources departments do likewise, even when they should know better.

The ultimate solution is to replace the industry with a small shell script.
I use google docs on a regular basis, and it pains me how bad it is sometimes. The worst part about it is that it's not the people writing the software, it's that the web is a really lousy platform for certain applications. I can't think of any other reasons a 10 line spreadsheet would bring a brand new machine to its knees.
On the flip side, I use google docs because it's free, works anywhere on any platform without installation, and it is way better for collaboration than office. Maybe once the improved standards and JIT javascript compilers come with the next wave of browsers these applications will really come into full force. At this point I don't care how good the desktop applications are, for certain tasks that don't require anything more than rich text editing I'll stick with online tools.
这个白人看得懂。
With the understanding that arc was released as a tech demo of a personal project at this stage, I took what pg wrote to mean that he thought he had better things to do than make it do X (in this case, add and test international support). I think there were enough disclaimers in the announcement, web site, and posts to conclude this is all he meant. He simply released his project as it was.

Why should PG say "unicode support will be easy and that he will accept patches"? Wouldn't making promises be contrary to the entire disclaimer he wrote? (Have you read disclaimers before? Paul's addresses at least as many facets as those written by lawyers.)

If bloggers want to influence PG into feeling guilty in order to get him to spend more time on arc regardless of his disclaimer of "when it's done, it's done," they can do it by phrasing things like adults. Or, writing their own languages.

(Great post. Maybe PG wouldn't have realized this perspective had you not posted it for users to upvote. I know I didn't notice your perspective. On the other hand, I wouldn't change a thing. You're expecting PG to plan for all potential hurt feelings, be it Mac users, Linux users, corporations, people in remote locations without access to the Internet because this means they can't download arc, and more. This is impossible to do, and leads to nothing being released at all.)
Snap: Making RSS interactive
So my small problem sounds like a bigger problem. Why won't Erlang let me specify the order of evaluation? You know, like, left to right?
Polaroid Technology Fades Out
People can't use my desktop application at any random library, or on their {i,g}phone--with my web application they can.
Waterloo, ON?
Google has already publicly stated that they do not want the acquisition to take place. Maybe they wouldn't wish a "fate worse than death" on even their competitors. Maybe Google is waiting for Yahoo to sink to the point where Google could afford it.

Brings a whole new perspective on the phrase "Do no evil," doesn't it?
I'm Apple had this discussion. I'd say just relax...
Hmm... I guess that makes me a liar too.

powerbook.local 104> cat > foo.py
# -*- coding: <utf-8> -*-
def ô():
return "ô"
powerbook.local 105> python foo.py
File "foo.py", line 2
SyntaxError: Non-ASCII character '\xc3' in file foo.py on line 2, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
powerbook.local 106>

Now if you actually go look at the web page in the error message, you should notice that the encoding doesn't include the < >.

But even when the encoding is set properly python still complains:

powerbook.local 106> cat > foo.py
# -*- coding: utf-8 -*-
def ô():
return "ô"
powerbook.local 107> python foo.py
File "foo.py", line	2
def ô():
^
SyntaxError: invalid syntax
powerbook.local 108>
Has it ever been easier? Is there some hidden nostalgia for a world I'm not a part of that made application development dramatically simpler? Writing code is hard, no matter what the environment, one of Java's largest failures was 'write once, read anywhere'. Look at Joel's experience with .NET: http://www.joelonsoftware.com/articles/PleaseLinker.html. This article is just shrill yelling of 'square peg! round hole!' and apparently it works.
Yes, but I wanted to allow the broader pool of dates that includes, for example, 1987--.

I think my best bet is time traveling to 1231-12-31 (or really any December in the early 1200's).
Puzzling that this article doesn't mention ITER
actually one part of it is a datasheet and another a form designer like in an IDE. I'm sure a good programmer would be able to re-create them. but they would probably resort to some Ajax kit. I try that and for lots of reasons wouldn't work or would be so heavy that it would become useless. So instead I spend over 3 months (which is a lot for JS) and wrote everything from from scratch.
I guess my only hope is that the entire application becomes so good (which is mostly backend stuff) that even if someone has the JS they couldn't create the rest.
Yahoo Shelves Meebo Competitor myM
BarCampNYC Needs Your Support
30 books every young entrepreneur should read
The Pink and Blue Project
Well, okay, it sounds like I have therefore interpreted the Erlang Challenge correctly: it highlights what Erlang is good at. And that's fine. There's nothing wrong with ass-kicking special-purpose programming languages, and I look forward to the day when I will actually spend ten minutes learning Erlang and be able to start discussing it instead of just marveling at it from afar.

The thing is, the Arc Challenges (I presume there will be others...) are explicitly intended to convince us that Arc is an awesome language for solving general computing problems. (Of course, they're also tools for designing Arc: If Arc proves unconvincingly awesome at any point, the plan is to twiddle its design knobs until the awesomeness returns. We will see how it goes.)

When you adopted the Arc Challenge's title and style, it left me wondering if you were aiming at the same goal. If you were, I wanted to invite you to shoot again, because you kinda missed. However, it seems that "convincing me that Erlang is good at everything" was never your goal at all, so I'm sorry to have interpreted it that way. (My interpretation may have been unduly influenced by the original title of the submission...)
Fast Company Goes Social
Should You Raise Venture Capital, And When?
I know that everyone ("everyone") hates software patents.

Personally, I don't see what the difference is between patenting something made out of atoms that accomplishes a task in a new way, and patenting something made out of bits or memes that accomplishes a task in a new way.

If (a) you've come up with something new; (b) you're not morally opposed to software patents; (c) you have ~ $5k ; (d) you'll be able to detect infringers ; (e) the infringers will have deep pockets, then a software patent might be the right tool for the job. You can slap "patent pending" on long before the patent is issued, and collect licensing fees from legitimate companies that want to use your technology.

...all of which gets us back to the core point:

What is it that you hope to accomplish by obfuscating / patenting / whatever ?

A moral victory?

A competitive advantage for a few months?

Other?

Your answer to this question will dictate how you proceed.
Dumb question: Erlang computations are supposed to be side-effect free right? If they are, why does order of evaluation matter?
Does everybody that ever worked for thoughtworks automatically become a self important blog jockey?
Thanks for your excellent post! I'm interested in OCaml, but I am very much a momentum-based PL-switcher.
Visualizing Social Media Fatigue: A Graph of All the Social Networks
Zvents releases open-source cluster database - Hypertable - based on Google's design
Yeah, here's the quote: "(Note, long after I wrote this entry: I think OCaml has some fairly fundamental problems that keep it from being a first choice for server-side development. If I were to use it for anything, it would be as a substitute for C++ in delivering client-side executable/GUI programs, e.g. for Windows systems. And I still think it's a really cool language.)"

Anyone know what he's referring to?
The problem with patent is that large companies go out and copy what ever they want and then turn around and patent it. I wouldn't mind if some small potato took my code. Of course I wouldn't like it. but.. it would be really painful if a larger company did it. And they do. There is not much inovation with large companies. the good ones buy smaller compaines but some just take what they want. from open source or where ever they get their hands on.

So yes i would be for patent if it wasn't such a bad system where if you have moeny you could patent even things that don't belong to you.
One 30" is much better. As you said, the center becomes usable again. I would never go back to two screens, even if they offered more total space.

That being said, I could go for one 42".
I solved that when I upgraded by going to a 19" flanked by two 17"s. It works beautifully. I have my editor on the 19", my documentation on the left 17" and my browser/console window (program output) on the right. I love it.
If you had a piece of code like this:

case my_function(Foo) of
some_result -> do_something(A);
some_other_result -> do_something(B);
_ -> do_default_case()
end

Why do you care if the output of my_function(Foo) is compared to some_result first or some_other_result first?
From the article "I know that Firefox still has my comment in memory somewhere. All I have to do is figure out how to get it."

cat /proc/foo | strings | grep
I'll have you know that your flash intro music was an unwelcome addition to the 3rd movement of Mahler's 2nd.

Anyway, I looked at the site and my one impression was: Skepticism. I mean:

...will produce one winning entry to be a feature film in theaters. We'll also be casting the movie using the site.

I mean, I know nothing about the art of film production, but I think that casting is usually done through trade journals and auditions for a reason. Likewise, don't studios usually base ideas on more than, "That sounds good", and look into what kind of connections the filmmakers bring with them, their track records, etc?

And this:

You are competing for the chance to work on a professional feature film - either as an actor or a producer and originator.

Huh? Isn't the producer the guy who drives everything, puts up the dough, etc? How do you win that sort of thing in a contest?

Skepticism, that's all.
Seems you're right. That was a nice foray. Back to Scheme I go...
Probably yes, but they're lucky idiots. It's the buyer's problem now...
That's what JSUnit/AsUnit/Selenium is for...
I wouldn't test a pure CRUDscreen put-data-on-the-screen app. How would it break? The app is basically a specification of the data you want moved from database to the web page.

And with the apps I've worked on, about 80% of the battle was the UI. The backend was usually pretty simple data storage. That could be because my career has been largely UI-centric, but there are certainly apps out there where the UI code is more complex than the computation itself.
Awesome! One less person i have to compete with!
As I pointed out in the comments of the TechCrunch entry itself, this is non-news. MyM was never even launched; TechCrunch's coverage of this as if it were in any way irregular is tantamount to saying that no company should ever test a product idea if they're not 100% certain of bringing it to market.

Yahoo! still has a very nice web-based version of Yahoo! Messenger at http://webmessenger.yahoo.com/ -- and it's even interoperable with Windows Live Messenger.

To quote the reply I made to Michael Arrington's response:

"Does it serve your readers to post a “news” item like this, with no context on how the service being canceled rates on importance within Yahoo!’s line of products… with no context on whether this cancellation is truly a notable event or merely a semi-regular occurrence within companies’ product testings… with no context on how Yahoo!’s product testing and remaining products in this area compare to the testing and existing products of competitors?

Or is it simply more convenient for you to post a limited amount of information of hard-to-measure worth while you can still be the first to post it?

Please don’t view these questions as an attack on you or TechCrunch. I am simply trying to encourage you to think about the value that you are providing to your readers. Because as one of those readers, I am giving you the feedback that I feel that value is diminishing."