skysight-inc/HackerNews huggingface dataset:
In Germany I have heard writing one's one contract can have disadvantages: if you happen to include anything that later turns out to be "illegal", it will be interpreted against the person who wrote the contract. "illegal" not meaning something you would be punished for, but there are some things you can not write in a contract (for example "the client agrees to work as a slave for the other party for the rest of his life" - a contract has to be "appropriate").

IANAL, though - not sure how much it really matters, it is just something I have heard.

It might be good to have a checklist for things to watch out for.

I usually try to change the parts about who owns the right to the code. I don't mind the client to be allowed to do whatever he wants with the code, but I don't want to be prevented from using my code. It is hard to describe exactly, but I try to be explicitly allowed to keep using standard practices of coding. Otherwise, a client could put my out of business for good after the first project (I guess that is paranoid, but I just want to get that right), because he owns the rights of my "for loop pattern".

Another thing is accountability. German law knows several degrees of accountability, something like "neglect" and "accidents" (not sure how to translate it). It is possible to make the contract tighter than the standard law, so that you are only accountable for neglect, but not accidents. (roughly something like that...). Also maybe one could write in the contract something along the lines of the client being responsible for testing the software?
There's probably a way to link directly to github's representation of the post

I don't know about that, but there is a way to pre-scroll the page to the content, so that the top metadata blocks are hidden: Just add #readme to the URL, as such:
http://github.com/raganwald/homoiconic/blob/master/2009-01-2...
Hillary Clinton confirmed as secretary of state
he is just taking a common phrase and trying to make it funny again. the point is make the best of a bad situation/
http://browsershots.org/ is your friend.
The tautology of being a winning entrepreneur
Startup Chronicles: Day 1 - 4:49AM, 1/22/09
Connecting Apple's iPhone to Google's cloud computing offerings
Cloud computing and software development for handheld devices are two very hot technologies that are increasingly being combined to create hybrid solutions. With this article, learn how to connect Google App Engine, Google's cloud computing offering, with the iPhone, Apple's mobile platform. You'll also see how to use the open source library, TouchEngine, to dynamically control application data on the iPhone by connecting to the App Engine cloud and caching that data for offline use.
Google G1 ONLY FOR TMOBILE 
T-Mobile Google G1 is an interesting phones which used android as operating system.the flip-out LCD feels solid and springy. Keyboard keys are small, spongy and a bit recessed, so it's hard to touch type right off by the feel of the keys.The Operating System "Android" is a Software Platform based on "Linux Kernel".
Ayan Songs, Download Ayan Movie Songs, Ayan Film Songs, Ayan Cinema Songs
Listen FREE or download Surya's Ayan movie songs exclusivley on Galatta.com.
You should read up on photons. (I still upvoted, though.)
>> Why can you build a new language with infix syntax and Greenspun's-tenth-law semantics up from scratch, but not a new Lisp?

pg: I'm a big fan, but I think you're a bit off on this one.
Costs, risks, and benefits.

Costs: with Java/.Net, you get free garbage collectors, machine code compilers, debuggers maybe, vast numbers of libraries from thousands of sources, a huge installed technology base and ecosystem. Versus almost none of that with start-from-scratch.

Risks: by staying on a known platform risk is minimized. If an organization is looking to replace/supplement language X with a new language Y, it helps that X and Y are both calling the same libraries. Developers get knowledge re-usability and the organization gets a way to easily recode new programs in X that were recently written in Y before everyone decided that Y was a mistake.

Benefits: much reuse of platform knowledge, libraries, etc., most of which have typically been heavily used and debugged (again reducing risk.)

You once pointed out that moving away from the herd's choice of languages can bestow some major competitive advantages. I agree, but think that this will work only if one doesn't acquire so many disadvantages in the switch that the advantages are obviated. Clojure on the JVM gives the best of Lisp, FP, and the JVM/Java ecosystem while minimizing the problems of each.

The languages don't "have to be built on top of existing popular VMs", but why, given all these advantages, do it any other way?
Mono 2.2 may overtake .NET in some critical categories
I had no problem getting Clojure running on Eclipse.
I much prefer emacs though.
The re in grep means "regular expression".
Here comes Britannica 2.0
Researchers develop new ink for bendy screens
It's not really a case of TABLE-elements versus DIV-element. It's a case of semantic markup or not. If something is semantically a table (i.e. data which is not just liniear but structured along two axes) then use table-markup.

A good rule of thumb is to decide if a structure is semantically a table, is to consider if it would make sense with headers (TH-elements) in the first row and the first column.

If something is not semantically a table - e.g. you have a linear list of items - then you don't use either DIV's or TABLE's, but rather the appropriate markup which is UL og LI elements. DIVs are semantically neutral, so you shouldn't really need them often. Mostly they are used precisely to overcome limitations in the CSS implementations in current browsers. DIVs are useful though when there is some structure which dosn't have an appropriate element defined in HTML, eg. there is no "footnote" or "header"-elements in HTML, so you use DIV to mark these elements.

With proper semantic markup you can use CSS to control if your list of items should be displayed as a bulleted list (display:list-item) or as cells in a grid (display:table-cell) or whatever - without changing the markup. This is a pretty nice seperation. Again, it doesn't give you any new layout power but it allows you to structure your code in a more maintainable way and produce better markup.

Regarding screenreaders the issue has nothing to do with degrading. The issue is that a screenreader which understands table semantics may allow the reader to navigate in two dimensions, explain the headers in both dimensions associated with a cell and so on. But if table markup is used both for 2D data sets and for all kinds of layout purposes like positioning an image or whatever, then this feature becomes useless or at least annoyning.
It really does sound like he doesn't want to learn new things.

"I've never figured out how to get Visual Studio or Eclipse to produce a compact list of all the places where a particular string occurs throughout a program."?

Come on. [in eclipse/variants] CTRL-H? Search menu for the blind?

The rest of the points are pretty general: Utility, availability, generality. This covers most good IDE's if you ask me.

What's needed is a study rather than an opinion. Compare two or more groups, experts in either emacs/vi + shell vs eclipse/visual studio and one common language. Look at the speed of completing basic tasks common to programming.

I would hypothesize that while differences amongst groups exist, no differences between means would be larger than a cohen effect size of 0.5
In this case it wasn't; the discussion was about legal activism and judicial review. I've read several books on the subject, some essays, and several transcripts of supreme court cases, just because I find the subject interesting. On a more basic level, I can name the supreme court justices -- so in terms of factual knowledge, I'm quite confident I was on solid ground.

My debating partner, however, didn't really have any facts at hand, but instead had strong opinions and essentially parroted oft-repeated truisms, like "the supreme court is full of ultra conservatives", a claim that certainly begs some evidence.

During the argument, I made a persistent effort to back up any claims I made with examples or evidence. When my opponent said things that I thought were false, I would wait for him to finish, and tell him: "I think you're wrong because of XYZ". The first few times, it was ok, but as the argument progressed, he just got annoyed and would become irrational. For example, he would:
- say he hadn't said something which he patently had said just two minutes before. In other words, a po-faced lie.
- he would ask for evidence when I made a claim, and when I then provided evidence, he would say he knew it and didn't want to be bored with details, without acknowledging that it was a datapoint in favour of my position;
- he would claim I was "oversimplifying", and when I would ask him how, he would refuse to tell me, saying "oh it doesn't matter".

I personally really enjoy vigorous debate, and I'm quite happy to be proven wrong. Really. For two reasons:
- I learn something, and learning something is cool;
- I'm better prepared for the next argument!
And I think to certain extent, scientists are more at ease with the idea of being proven wrong. I think we realize that it doesn't mean you're stupid; far from, you're just entertaining a theory, and if the evidence contradicts it you have no particular emotional attachment to it. Whereas I've found non-scientists to be less accustomed to having their theory shot down, and as a result they become more defensive (and hence irrational), which leads them to use what I would regard as quite underhanded and dishonourable debating tactics, a la "38 Ways To Win An Argument".
I think she'll be really good at this.
That's funny, the example you gave sort of happened during the argument. I would painstakingly establish A. Then I would do something like A => B. Then I would remind my opponent that we'd established A, whence B followed. At that point, the opponent would deny that he'd agreed on A, and we're back to square on... very frustrating!
At least not a pixel picture.
It's going to make your developers a lot happier

That's pretty amusing, given that Clojure is a Lisp and we all know how unfriendly and unpopular and weird Lisp is. (You could look it up in that post you quite agree with.)

they still don't have a good story for GUIs, sockets, and a clean-up language

This reminds me of Gilbert Ryle's old line, "She came in a flood of tears and a sedan chair." What do these things have in common? And what on earth is a "clean-up language"?

most CTO's will have a single question that's foremost in their minds [...] why is any of that going to change if OurCorp starts using it?

It just doesn't matter. Lisp (including CL) is what it is, an amazing tool for those who want to take the time to learn it and a competitive advantage for those who figure out how to leverage it on a problem. It probably isn't going to become popular, and it certainly isn't going to go away. The ignorance of CTOs isn't going to affect it much either way.
You know, I've love a service where I can ask hackers how to do stuff.

Like Yahoo Answers, but hacker answers.
absolutely not. The rockstars I know (3 on my life), do really produce a lot of code, and get done things quickly (and two of them had to leave early from work, as they family and children to take care off, yet they could produce almost twice the amount of quality code from other people and that's why they are so impressive.

There are people that are all talk, and no game, but then they are people that can really produce code faster than you can think about a feature.
Also, some of these people are able to do things that are too complex for any average programmer to even grasp. Things like implementing a very efficient interpreter, parser for a dynamic language, it top of something else, is only domain of people that really know their stuff.
Sure, I worked on a interpreter, for a fictional language in CS class in college, but doing it for a production level language, is a totally different ballgame.

As I said, management might be impressed by people that know how to talk, but a good programmer will only be impressed by people that really can code and get done things better then them.

The only way to recognize one, is to work with one.
you answered your own question there. the community isn't bothered about the popular image of PLT Scheme as merely a Lisp for teaching. (whether they should be bothered or not is a whole different question, but choosing not to care ensures that PLT Scheme won't be a mainstream Lisp.)
That's assuming that your friends' behaviour is rational. For example, during the debate, while I certainly held my ground confidently, I didn't raise my voice, swear, engage in ad-hominem, belittle my opponent, or anything else that I would consider rude. What I did do is counter every statement he made that I considered false, which was quite a few statements. Clearly this riled him. But is it me who is to blame, or is it him for getting emotional about the fact that he is in the wrong?

I have been a great many arguments where I have found, eventually, that I am wrong. I can't provide any evidence, obviously, but I can assure you that I am gracious in defeat. I simply say: "oh, that's interesting." Or "huh, I didn't know that, maybe I'll have to think about it again". But again, I think that comes from a) being quite confident that I'm not stupid, so that I don't have anything to prove to anyone, and b) being a scientist and thus having had these types of arguments with, shall we say, the creme-de-la-creme of smart-ass debaters ;)
I think it's the passion for what they do that differentiates a "rock star" from someone who just does it for the pay. You can have passion without being holed up in your bedroom programming 24/7.
This is practically unreadable on my Nokia 3200.
Break your projects up into milestones

for example:

Milestone One (Prototype, wireframe, database development (if it's dynamic, or just design) then make them pay up front before you start this.

Milestone Two (Slicing and Integration, programming, etc) break that up into another payment.

and usually I make a final milestone for launch like:

Milestone Three (Testing, debugging, content integration, etc) and have them pay you before you launch the website on their server.

Some clients request contracts, use docstoc.com to find "standard web contract" or have a lawyer. As you get better at giving new customers a sense of trust you don't really have to bother, if they don't bring it up.
And in Forth:
: square dup * ;
This is the First-person-shooter-era response to how one chooses to deal with Life's difficulties.

It begs the question on where one aims the cannon though...
> In short, you can't debate with non-scientists in the sense you mean.

Yep, that's the conclusion I'm led to. In this case, it wasn't possible however: straight off the bat, for example, he declared that he's left-wing. I happen to be a republican from the libertarian wing of the party (we seem to be a dying breed of late), although I'm quite moderate. So the potential for consensus was small. The argument kicked off when he said "thank god Obama is going to get in power because he'll redress the excess of hardcore conservatives" -- which is a bit of a howler, and I took him to task for it. Now granted, I didn't back down, but nor did he! I don't see why I should be blamed for being rude simply for being better-informed. In fact, and my friend agreed with me on this point, at least I didn't engage in any underhanded debating techniques that I list elsewhere on this thread.
We'll probably never know everything..

http://en.wikipedia.org/wiki/Michael_Connell

http://www.wkyc.com/news/local/news_article.aspx?storyid=103...
Keep away from small children and tainted data.
I have done the physics: or spoken to people that have.

In fact I have seen a successful small rocket launched from a 100 ft high ballon platform (the physics is painful but it is possible).

Other ideas like centrifuge acceleration I know have been discussed: and I personally see potential in them (Ammers & Myers, Oxford University Press, 2006 I think: I'll try and dig out a reference #).

With equal respect I suggest you actually try to think outside the box before posting vacuous statements stating it is impossible.... ;)

EDIT: BTW you do know NASA have recently been exploring the possiblity too.... admittedly for low earth orbit sattelites (and i know that a major problem is breaking that barrier - but it is proof of an initial concept....)

The crucial data is that ballons can carry rockets to a MUCH higher altitude than planes. The reduced drag at that altitude means a lot less propellant is needed (and even a solid fuel propellant could suffice).

NASA has plans for a ballon that can carry up to a ton of equipment to a height of 33Km which is pretty good!

You've also missed the point of the airplane: 600MPH is frankyl nothing (4% of the speed required for LEO). The important thing is the lowered drag and kinetic requirements to get the payload to LEO.
you're right in that my argument can be generalized to most (new) programming languages:

unless your programming language requires a new VM for some good reason, build it on top of an existing one.

when would a new VM be required? well, Erlang for example just could not have been implemented on top of JVM (forget for the moment that it predates the JVM by a few years). BEAM, the Erlang VM, has an overhead of ~500 bytes per process -- try that with JVM. Factor, IIRC, outgrew the JVM very quickly too – though i forget how exactly.

most of Lisp's power lies in uniform syntax which manifests itself in Lisp macros. that's not a good reason to write a whole new VM.

the reason i talk about "future of Lisp" rather than all programming languages is that at the time i was thinking about Lisp & why it remains unpopular despite being an awesome language.
"When God gives you lemons, get a new God." - I prefer that version.
We also get drunk and do stupid things. Some of us also enjoys reading obscure poetry. Or listen to brain dead No Wave-music or spends two hours listening to this new awesome Japanese records played on two spoons. That's not 'attractive' or 'simple' or anything else that would fit into your hipster life in that black/white attic of yours, listening to 'hip' music and drinking that fabulous red wine (which probably sucks) and enjoying the shit out of your Good Life (tm)

The same applies for code.
too little, too late.

Britannica should have partnered with Wikipedia, rather than attack them:

Mr Cauz characterised Wikipedia as containing "plenty of cracks on it in terms of the quality".

"It's very uneven, the facts are not always correct, the model contains a lot of pitfalls."
PepsiCo Figures Tropicana’s Carbon Footprint
Paul Buchheit: Communicating with code
Interesting. Could you have implemented drawTree with Language.Haskell.Pretty? Also I get the following error with ghc:

yc.hs:35:34:
No instance for (Monad (Either String))
arising from a use of `mapM' at yc.hs:35:34-52
Possible fix:
add an instance declaration for (Monad (Either String))
In a 'do' expression: keys <- mapM parseKey names
In the expression:
do keys <- mapM parseKey names
return (toTree (zip keys values))
In the definition of `paramTree':
paramTree nameValues
= do keys <- mapM parseKey names
return (toTree (zip keys values))
where
(names, values) = unzip nameValues

(Edit: I'm sorry that the error message's whitespace gets messed up here.)

Also your groupings function is only used in conjunction with Data.Map.fromList. Did you consider using something like
Data.Map.fromListWith (++)
instead? Of course you'd have to wrap your would-be Map values in singleton lists first.
Toilet Training Potty Training
Dr Potty's toilet training kit includes helpful Potty training dvds, toilet training books and solutions for kids.
The Smalltalk VM comes immediately to mind.
I'd agree with this. Good tax system, government support, close to China etc... let me know if you need any feedback, my startup is based here
I agree, HK is great - low cost and good infrastructure, access to great, English speaking and globally aware talent
which one? Squeak first appeared around the same time as Java. was there a free, open-source, solid Smalltalk VM back when Perl, Python or Ruby were started?
ABCL, Rhino and JRuby provide a countercase by examples. Running on a VM is not enough, easy access to the VM libraries is not enough, and the version on the VM won't automatically be more popular.
Budgeting is BS
Is this Twitter spam? Or is this simply fair promotion?
Normally when a Twitter user like this adds me - I diligently report them to @spam. But I hesitated on this one. IS he a spammer? He IS playing the game, and updating twitter. He's just plugging his website in his updates. That's is spammy - but I guess its not spam.

What do you think? Is this spam, impolite, or neither?

Do you think we should get used to this - as Twitter seems to be planning to inject ad's into the update feeds this year?
How to stay healthy doing 18+ hour days with 3,400 yen and an iPod
Is webmyn for HN down?
Can't ping and the HN results on google pages are not loading. Site seems down as well.
Top new business ideas for 2009
First off, why are you using Terminal.app? :)

I use iTerm mostly because a) tabs! b) I'm a sysadmin and have a ton of bookmarks for ssh connections to various servers (frequent ones with keystroke shortcuts). c) profiles are handy.

iTerm seems to support 256 colors.

Edit: Terminal.app seems to support tabs, must be new in Leopard :)
some amazing ideas on here, notably:

http://springwise.com/style_design/stylish_helmets_for_urban...

http://www.springwise.com/life_hacks/professional_feedback_i...

http://www.springwise.com/telecom_mobile/modular_mobile_phon...

http://www.springwise.com/telecom_mobile/100_device_is_just_...
Make lemonade, not war!!!
So, the solution is a Lisp'09 standard that talks about GUIs, threads and sockets?

I guess the really big problem probably is that there is no canonical implementation, no obvious way to go like there is for other languages. When you want to play with Java, you grab NetBeans or Eclipse and you have Sun to turn to for a runtime. When you want to play with Ruby or Python or most newer languages, you go to http://{$language}.org.

Smalltalk suffers from the same problem - too many different implementations, and no obvious path to follow.
The original Smalltalk VM was not open-source (the concept was not invented back then) but was very well documented and had some different implementations.
Tesla admits to underpricing Roadsters
A car manufacturer without a genius supply chain management team is dead in the water.
> The guy that takes a 10 minute set of verbal requirements, extrapolates, and builds a Web 4.0 Whooziwhatsit in a day, before you even know what Web 4.0 is.

I can't think of anything worse in my team than someone that just constantly dives head first into code. Great coders stop and think, discuss, then code. IMHO.
Doesn't Java have its own "cool" symbol? Anything -# or Iron- implies a relation to .NET, and I see little value in creating confusion around that.
awesome! my girlfriend would love to make you a logo if you're interested?

drop me an email and I'll put you in contact. peter [\at] omgponi.es
Satyam CEO minted money on fictitious employees
In Islamic world "network of men" is much stronger and effective than "network of machines".
Painfully absent from the article: an actual comparison between Mono and .NET.
I really appreciate the enthusiasm for the new administration...but this is Hacker News, not political news.
Dragons on twitter
Crash course in Applied Functional Programming
Ocaml meeting 2009
Attempts to manage work with social networks: Twitter limits
And guidelines on how to get ASP.Net MVC running on a 64-bit Linux box.

It's so tempting.
Is That an Emoticon in 1862?