skysight-inc/HackerNews huggingface dataset:
Complex and confusing problems can be tackled by breaking them into modules, with interfaces between. Objects are one way of doing it.

Each object wraps up a program. The program's global variables become variables of the object. The program's functions become functions of the object. The public functions are the interface of the object (an interface is the part of a module that interacts with other modules, like the surface of an object). So basically, you have the inside of the object, and the outside (surface).

Think of it as support for the modules that you already wanted, that seem to be naturally present in the problem, or in how you naturally want to divide it up and think about it. That is, use OO to support your conception, instead of a priestly template to mold yourself into. Tools are good slaves, poor masters. If you follow your conception, you will make mistakes - but those mistakes will belong to you, and so you will learn from them.

Using objects for modularity does not work well for every case (e.g. I think parsing works better in the old-fashioned style).

OO is nothing special. There's no wonderful mysterious secret. It doesn't even have a precise definition that everyone agrees on. It's just a tool. Inheritance and polymorphism are grossly overrated, but presented as a quasi-religious AI solution-to-everything - but are useful in some cases (e.g. great for windows/GUIs). There's also a danger of having overly theoretical modules - the "spaces" you mention. Be problem-driven. What does the problem need?
The Bush Administration never ceases to amaze me...
Yes. Music helps very much.

My day is shot when I forget to charge my iPod...
I like Bach and other Baroque music for play during concentration tasks. Beethoven, Chopin, and the like are too dynamic and emotional. Can you imagine trying to concentrate to the fourth movement of the ninth symphony or the second of the Missa Solemnis? Not all classical music suits all moods.
"above average" in this context usually means median, not mean - i.e. "in the top 50%"
Sounds interesting. Can you elaborate on those results? What sort of things went wrong?
Gotta love the all lowercase. It's, unfortunately, the type of thing that once you're dismissed from duty is looked back upon as more evidence that you weren't quite cut out for the job.
>Java development on the Mac is also very popular

Yeah, right.

Get back to me when Apple arrives in 2006 and releases a version 1.6 JVM, or at least provides an automatic update to Java 1.5 on OS X 10.4!
Yang was a pioneer at the head of an exciting part of Internet history. Yang worked the helm for over a decade and the company did lots of amazing things, but in this economy and combined with Yahoo's problems before the economic issues, it really was an impossible task for Yang to keep his job.

I don't think Microsoft will come in on this one. I really think Murdoch is much more likely, no one is saying it but a Yahoo/MySpace merger is something that scares me.

Could Yahoo and Facebook join forces? Maybe but I don't see a company which is yet to be profitable as being able to buy a financially struggling behemoth.

And Google + Yahoo = anti-trust suit.

So we're left with who can replace Yang? To be honest, I fully expect it to be someone I've /never/ heard of.
"The company has hired executive search firm Heidrick & Struggles to find the new CEO"

Appropriate firm given Yahoo's recent struggles. Sorry- couldn't help it.

A lot of people blame Yang for Yahoo's troubles. Some say his emotions got in the way of making a rational decision when Microsoft came knocking. The reality is that Yahoo is just not the product it used to be and they are slightly behind the curve now instead of ahead of it. Kind of sad really- Yahoo was my first search engine. I avoided using Google for a long time but eventually, like everyone else, I relented.

Another Web 1.0 Titan struggling to thrive in the new millennium.
This is sort of resonating with me. Maybe I've been doing to many exercises by the book, I dunno, but your description of the problem space seems straight out of a textbook which I'm all to familar with. Divide and conquer; define the data set, factor, isolate, call foo, iterate. . .expressions, storage space, and iterating each as a function is not hard, in short deducing a problem set in terms of an operation is not hard for me, since an operation, to me at least, is synomous with run-time, which is why I thought I was programming. . .a compositon of operations in terms of input and output. I understand that each approach is borrowing similar tenents of refactoring input, but I don't understand how the composition of operations are playing in terms of code-time vs run-time.
What is Object Oriented programming?

I wrestled with this one in school for a while, because the name is so screwy. What is an object? It's a blob of code. It's a walled off place in your computer's RAM that has variables and functions. It's just a bit of reusable code.

Why is that special? If you've spent your programming life copying and pasting code in a text editor, it's probably not going to be readily apparent. It's pretty easy to reuse code without having to jump through OOP hoops.

In OOP, those reusable bits of code aren't copied and pasted, in the text editor, however. They're reused automatically in memory. When programming in an OOP style, you create one blob of code (an object), and then without touching the original, you can use the object and use it's methods and variables.

You can modify or extend the object, and you're never changing the original object.

For instance, in Ruby. Everything is an object. Even integers are objects and strings are objects. That is, every time I use the integer "5" in my code, I have all the methods from the Integer class available at my finger tips.

So, I can do something like this:

5.next #this returns 6
5.next.next # this returns 7

Or, I can use the "times" method from the Integer class, to create a loop:

5.times do |i|
print i, " "
end
#produces
0 1 2 3 4

Why can Ruby do this? Because all integers are a type of object that has the .next() and the .times() method that we can use every time we use an integer.

The same goes for strings. In Ruby, every string is automatically given all the methods from Ruby's String class for free. So, you can do stuff like this:

"hello".capitalize #this returns "Hello"
"HELLO".capitalize #this returns "Hello" as well

and

"hello".empty? #returns false
"".empty? #returns true
"hello".length #returns the length of the string
"hello".reverse # returns "olleh"

Every string that you use in Ruby has all the String class methods available to the programmer, because in Ruby, every string is an object.

There are lots of other things that you can do with OOP, this is just a taste of what Ruby does. I think the key to learning OOP is to learn it in a language that uses it very elegantly like Ruby, or even Python. If you're trying to learn OOP in PHP or Perl or Java, you're in for a rather difficult time, because there's so much other stuff that gets in your way.

But, if you learn OOP in a langauge that uses is really well, you can isolate some of the OOP concepts, and you can go back and use them in your language of choice if and when you need to.

OOP certainly isn't the be all end all of programming paradigms, but it's well worth your while to learn if you're going to be writing code for a living. It's one way to reuse code. It's certainly not the only way.
> perhaps to click a link, or solve a simple math problem

This approach has rather high false positive rate, i.e. it ends up filtering out something that's not spam. Lots of people loathe callback requests and never bother following up on them. This has little to do with how hard/simple the challenge is, and a lot with the fact that the recipient considers it OK to offload his mail handling headaches onto everyone else.

That's not to mention that this approach basically doubles the volume of spam traffic because From headers are routinely forged.
Interesting technique and could spur thought in optimization tangential js operations...but does 300 bytes really matter that much?
Data structures bound to operations on those data structures, and some obvious elaborations on that theme.

Going much deeper gets controversial; there are many, many elaborations on that theme, each of which you can find a language that implements it and a language community that considers it anathema.
Sounds like premature optimization to me. You can't "save" bandwidth at the sub-packet level. It is like trying to "save" space used on files of less than a kilobyte in length -- you can do the math showing impressive theoretical gains, but other layers of your hardware/software stack process the data in chunks larger than that anyway, all your effort is for naught.
1.6 is available... but only for Intel Macs running Leopard:

http://developer.apple.com/java/

Also, I think it's pretty clear that Apple hates Java, at least on the desktop, and for pretty good reason. Java GUI apps are pretty much the antithesis of Mac OS X GUI apps. Java may be great for certain applications but I have yet to be convinced that GUI apps are one of them.
I hope Geocities isn't sold off. Still, most of those classic old home-spun webpages are dead anyway. I'll just have to backup my Geocities webspace and host somewhere else free.
Affiliate marketing. Hands down. Video professor puts out about 55$ per conversion, which is very related to your sites. You can go to cj.com and look for related products.
I cringe at the thought of hearing a radio ad along the lines of "You've got flickr in your myspace/You've got myspace in your flickr.", like it's a good thing.
World's earliest nuclear family found
Vietnam Travel Guide Online 24/7 - vietravel247.com - Everybody’s kung fu fighting
Another team is different from the stock market. In an economic competition you have a number of opportunities to gather data from customers, prospects, non-customers, and competitors customers. The key step is to assume that you have something to learn from your competition. In the case of the better mousetrap you would be looking for folks with a mouse problem who are unsatisfied by current solutions, these are "non-customers."
OO is something you can't learn by reading an OO textbook. (Program!)
I'm pretty sure it means 'bad-ass' in spanish ;)
JS-909
The smalltalk object system is a nice simple example:

A Smalltalk object can do exactly three things:
Hold state (references to other objects).
Receive a message from itself or another object.
In the course of processing a message, send messages to itself or another object.

http://en.wikipedia.org/wiki/Smalltalk#Object-oriented_progr...
Ignore the negative kickback. If you had a conversation with a friend about this kind of idea they would say you might be onto something. Write something on the web and suddenly people are complaining that your blog is not a peer-reviewed paper in a scientific journal.

On the topic itself, if you are really interested in improved creative task focus, whole-brain stimulants like caffeine are a sledgehammer approach.
A plan for the US/NA Auto Makers
Race on to build world's first space elevator
25 years of Turbo Pascal releases (about 20 versions from 1 to now)
I agree, bad title. Although getting developers to pay just to code on facebooks platform; is impressive.

"pay to code" = "pay $375 to apply to get verified"

This reminds me of Yahoo's $299 directory submission, a very old business model.
Nolo Press (http://www.nolo.com/) has some books/kits that walk you through the process. If you not inclined to do it yourself you can always pay someone, such as The Company Corporation (http://www.incorporate.com/) or INCNOW (http://www.incnow.com) to do it for you, most of them offer registered agent service in the state -- though it's probably cheaper just to rent a box at a UPS Store (or similar, a P.O. box is not acceptable).

Some states make it really easy to incorporate, you can check out Delaware's Division of Corporations (http://corp.delaware.gov/) to see if you can file online. I see they list the steps necessary right on their website: http://corp.delaware.gov/howtoform.shtml

Good luck!
I don't think that's true. Bandwidth is typically the bottleneck, and AFAIK there's no minimum size (other than minimal headers) for HTTP, TCP, or IP protocols.
http://translate.google.com/translate_t?hl=en#es|en|malo

guess Google and I are both wrong, I don't mind being in the same boat as google for once ;)
Probably the best non-fiction book I read in the last 10 years. It puts forward many reasoned arguments for the Eurasian historical supremacy (the Guns, Germs and Steel of the title), but as you say, the crux of it is that Eurasia is the continent with the largest contiguous area of similar climate. In other words, Eurasia is wide, while North America is narrow, and South America and Africa are both tall and narrow, resulting in very large climatic diversity, and smaller ecosystems adapted to each of those climates.
Thinking as a libertarian,

To me there seem to be two practically inseparable parts to thinking as a libertarian, when applying it to a practical issue. The idea that Government intervention is amoral & the idea that government intervention is counter-productive.

The former is really an assertions in an area where it is hard to rationally reach an kind of a foundation. This applies equally to most ethical frameworks. I'm not singling out libertarians. The latter often seems to be motivated by faith associated with the former.

You don't here many socialists admitting that while libertarians are morally wrong, their economic models produce a lot more wealth. You don't hear much the other way either.

In fact, those that accept that morally superior & practically effective are often independent. What I am saying is that I don't think that many without an ideological attachment to 'laissez faire' economies would be arguing your position.

The incentives & market signals may not have been perfect. There may have been some distortion coming from the possibility of state intervention. But there was & remains a clear incentive to succeed & a clear disincentive to go bankrupt. The major forces at play leading to a 30/1 leverage are market forces. But eliminating the chance a bailouts are a small drop in that ocean. How about eliminating the possibility of bankruptcy or legal liability? Those are probably bigger

The paper economics is built on lots of assumptions & axioms nailed in with common sense & on average or defining away problems. Consumers make rational decisions=> Define utility creatively. On average & in the long term people are perfectly informed.

Anyway, technical discussions aside, I think it is important for people to look at what parts of the 'ideologies' they subscribe to are independent of each other.

Does it follow from agreeing that socialism is a morally superior concept to capitalism mean that there are no problems inherent in state controlled institutions? Does believing that a coercive state is a bad thing mean that everything you want from an economy can be achieved without it?

I think that the anti-welfarists need to accept for example that sometime, somewhere laissez faire markets may produce a situation where a good chunk of society is undernourished. And more to the point that it may not always produce the economically most efficient outcomes.
I'm sorry to say, but I don't perceive it to be useful at all. I'm probably in your target demographic - college student in engineering, and I have to tell you that anyone who's going to be doing any sort of work with graphing calculators would prefer to buy one than use their iPhone. Here's why:

- Physical buttons: when you're chewing through problems you absolutely MUST have physical buttons with tactile feedback. Like the calculator app on the iPhone (the default one) the buttons are way too small to even begin operating quickly.

- Battery life. My exams are often 3-4 hours long, and an iPhone would not be allowed as a legal calculator. Even if it were, the iPhone would have trouble holding a charge through the entire exam.

I just don't see much of a market for it. At a lower price point maybe - I see this app as being useful for possibly one-off equations, but nobody who needs this sort of software will use this app as their primary graphing calculator.

Now, what I would gladly pay for is a graphing calculator software that comes with a USB keypad. I have my graphing calculator with me always, but sometimes it's slow and the screen sucks. It would be wonderful to have the friendly physical user interface of the calculator and the power of the PC.
It's funny, one of the original details I left out and put "debatable" for instead was "profitability".

IMHO I still don't think the Adwords guy is an entrepreneur; he's an employee - a damn good employee.
This is great! Wonder how complex of an audio app you can create in js..
+1. The ridiculous string of names that you could get from any of the possible mergers is definitely weird.

AOL -"Bebo", "TMZ", "Truveo",

YAHOO - "Del.icio.us", "Yahoo", "Flickr", "OneSearch", "alibaba"

News Corp - "Myspace", "Sky", "FX"

Microsoft - Actually, most of these sound semi normal. However, the fact that I also cant think of any of their brands is an entirely different problem.
Furthermore, unleveraged investments are just plain not attractive during boom times

In other words: People will take these risks no matter how many times you tell them not to as long as the arrow has been pointing up for a while.
Another definition (and the one I was thinking of):

Breaking news is a current event that broadcasters feel warrants the interruption of scheduled programming in order to report its details
I don't know what you say that. Anyway, just wait for the next CEO that will make Yahoo just another AOL or sell it in a few weeks to Microsoft.
I just looked at the Mahalo page also, although I think it looks better than "cluttered and useless" - I believe they are using CSS tab methods to show a lot of their content on the homepage at once , (view source) for SEO purposes.

then again they use "No follow" - so who knows ...still crap.
I disagree. Having fewer developers does nobody any good - you would have to introduce artificial barriers to the App Store, which is unfair to small businesses. Customers also lose the ability to have competing apps.

What we need is a better visibility system. Similar to HN, Digg, etc, where the best apps find a way to "float to the top", but never permanently (i.e. an extremely popular app won't sit on the Top 50 list forever). We also need better integration with this system from the web side of things - so app authors can generate exposure for their app not only on the App Store, but also by themselves through their own marketing.
That perception may be too generous. The GDP of the combined African Union countries is less than that of the Netherlands.

http://en.wikipedia.org/wiki/African_Union#Economy
You'd think that, but digging a little deeper shows: "Java SE 6 is available on 64-bit, Intel-based Macs only." Unless your customers are running 64-bit machines (and even they would have waited until this September for compatibility), you're SOL and have to compile a separate Java 1.5 release for Mac.

So, Windows 2000/XP: No problem! 1.6 compatibility in 2006.

OS X 10.5: Whoa! This Java thing is too new-fangled for us!

As for the GUI: You can get around that with a Synth theme. Ugly and slow Java on the desktop is a thing of the past (even on Mac).
I agree that instrumental progressive metal is awesome for programming. I've also found classical music to work, but I enjoy metal a bit more.
There are people who don't know google but facebook?
I don't think his startup is seeking investment ;p.
Vancouver, Canada HN Lunch
Tomorrow at the Old Spaghetti Factory @ 12. Email me simon@lingermedia.com if you can go and haven't contacted me already.
Computer programming is all about declaring abstractions that make computers easier to control. Objects are an intuitive way to model your program by defining logical subsets of data and operations on that data. Classes are define common, readable patterns in the data - a person class can have age, name, height and weight and methods to manipulate these. At runtime, only the values of data are replicated with pointers to single copies of methods. OOP is just another way to organize your code. Inheritance of classes gives a higher level of abstraction, allowing you to reduce the code footprint of your application and make it more maintainable.
Will that future be a function of a CEO or will it be predetermined already?
ITunes U, tons of free educational materials
This is probably the wrong community to mention this, but this discussion is an excellent example of why I am largely procedural in my programming and don't focus too much on OO. I need to tackle real world business problems. Likening objects to things like refrigerators and toasters is where I get lost. Perhaps those examples work well in the classroom to help kids wrap their heads around the concept of OO, but I just don't see how or where they fit in the real world. OO evangelists are always quick to cite a lot of technical reasons for why programming in OO offers up major benefits in their work, but (from those I've spoken to) can rarely match examples to those reasons.
Did cnn.com really "interrupt" any "scheduled" programming with the Cuban story? They usually just have that red bar over the top with the "breaking" headline.
Its cool that css frameworks are starting to use fluid widths instead of fixed px found in most original grid layouts.
Another blog post dealing in platitudes and absolutes.

Don't really care if I fit into your mold of an entrepreneur.
Agreed, it's not much compared to what facebook promises. But that's over 10% of facebook's 2007 revenue (http://www.techcrunch.com/2008/01/31/facebook-finances-leake...), nothing to sneeze at.
I almost created the exact same thing when I started my blog. It was a source-controlled (SVN, though) Textile powered static blogging engine.

Comments were the reason I ended up looking into wordpress and movable type. I thought heavily about autosubmitting every post to reddit or hacker news and using that as the discussion but that could be constituted as spam (or offtopic). I thought about using one of the out-sourcing services like disqus or JS-KIT. The problem (back then) was they didn't index properly on search engines and it has really really high switching costs.

If those two issues have been solved (the search engine one might have been), I'd consider switching to a static engine.
No "believe" about it - that's what they're doing. But I don't need this. Mahalo debuted as a human search engine. It's changed into a "social media center." See how that worked for Yahoo.

Mahalo's venue is the very specific venue of people who want beautiful, human-designed search for things. They fail at that. Used to be they just had a search bar with some samples. Now they're useless.
Official Google Blog: Now you can speak to Google Mobile App on your iPhone
Objects combine information and operations. They should help keep disjoint things separate, and related things together. They do provide a simple metaphor for modeling.

Not all objects are alike. Smalltalk is "pure"; Python and Ruby mostly "just work"; C++ is very complicated.

No programming paradigm can save you from under-specification. You need a very good description of your desired behavior before you start coding.
Yeah - it reminds me of the old tracker days on the Amiga.

Anyone remember this? http://upload.wikimedia.org/wikipedia/en/f/fc/Protracker.gif

Edit: Not that I ever progressed past Axel F and Popcorn :)
It's not just the theme that I dislike (Java on OS X tries to mimic native OS X widgets) Java GUI apps just don't feel like real OS X apps. Whether that's a shortcoming of Java itself, Apple's implementation, or Java developers, I don't know. Probably a combination.

I'm pretty sure that all the Macs Apple sells now (and for the past year or so) are 64-bit. (Also it's been available since April). But yes, it's less than ideal.