That write-up contains a little too much hype for my tastes. And as soon as I saw the words Java and C++ I lost 95% of any curiousity I have about ragel.
HN user
userdeveloper
Stuck with Java. Exactly.
Well done.
It would also be nice not to have to use large install scripting languages (Perl, Python, Ruby), Java or Go, in order to communicate with AWS, e.g., EC2.
Let us be thankful for XML and the popular idea of "it's already done for you, just install this bloated library and read these 320 pages of documentation".
If API's mean you can't debug something without having to install Java or some huge, complex scripting language, I'm not sure they've simplifed anything. They've just added another layer of abstraction. More work should anything ever go wrong. And eventually, something always does go wrong.
Maybe S3 should just be rysnc servers running in Xen. Just cut to the chase.
How about learning to read code instead?
How about learning to distinguish bad code from good code?
How about learning to look at Atwood's code with a view to answering some questions: 1. How does this guy's mind work? 2. Can he think clearly or does he add needless complexity to everything?
Then making a decision whether you want to use his work or not.
I've been booting with old USB sticks for years, not to mention cheap microSD cards. I'm still waiting for one to stop working. What sticks are you using? Are you booting with the stick mounted rw? Are you mounting your userland in RAM?
s/protocol/database format/
As I said, we have no way to say whether the assumptions are true or not unless consumers are given the choice.
As you admit, no one can predict what consumers will choose.
However, a company can actively work to limit consumer choice. They can attempt to control how a consumer uses a product so as to benefit the company, not necessarily the consumer.
I ask you, "What would hackers do if they had choice?"
It's easy to look upon "success" after the fact and conclude a company is good at what they do.
Apple has failed many times. And they may fail again in the future.
I'd like to buy stuff from a "fearless company", not one that places ridiculous restrictions on users (fear of competition?), even when they are at the top.
Hackers use Apple products and endure the annoyances because there are no other choices.
Apple is the new Microsoft.
Success?
Maybe.
But at what cost to the consumer and the computing world at large?
Apple is trying to prevent people from freely programming and experimenting. Sure, people will still buy and use their products, but Apple cannot stop competition. Arguments that hackers should just accept Apple as the new Microsoft are good for a laugh.
Keep them coming.
State machines just seem natural to me. I actually sketched out a state machine before I even knew what a state machine was. The other concept I really like is lookup tables. Reminds me of truth tables. Are state machines really just a form of lookup table? I guess it's just how my mind works because these tables seem natural to me.
This is great thread. I have only used lex/flex to make my state machines. I'd like to try something new eventually.
Windows support was not immediate either. It took some time. I used to use a program written by a student at Williams College. I forget the name. It was more simple and faster than iTunes. Then for a while I used a Perl script. I must admit, in retrospect, Apple knew what they were doing. I just couldn't see the point in iTunes. I doubted whether their $1/song "music store", and forcing users to use it by forcing them to install iTunes, would ever fly.
I think the key is curiousity. Without it, if the process is reduced to just checking boxes, you're right. Something is lost.
Asking questions is crucial. If you cannot formulate the right questions, you cannot progress in learning.
This student sounds like a self-starter. I just think it's uncalled for to question what he did. Even if he thinks of it as "just checking boxes". He might not think of it that way in years to come.
He did the work. He kept his GPA up.
Hopefully he was intellectually curious and he formulated questions (even if he never got the chance to ask them). If he has aspirations for grad school, "it's not over yet".
There's still plenty of time to reconsider viewing his education as "checking off boxes" and to become more curious.
Meanwhile he did the work. And that's more than many students do.
The true simplicity actually lies below those abstractions.
It seems reasonable to assume that people would not buy Apple products if they were too difficult to use.
It seems reasonable to assume people do not buy them for ease of use. Other competing systems are also easy to use. It seems reasonable to assume they buy them because they "look cool", much more so than any competing product.
It seems reasonable to assume the initial attraction to Apple products is the hardware design, not the software.
But none of this can be proved or disproved unless Apple were to unbundle the two and hackers were allowed to write software to run on the bare metal, not necessarily on top of Apple's development platform.
If Apple is afraid to try this then it shows they have something to fear. It shows they feel the need to exercise command and control over how users use Apple computers.
Apparently Apple's hardware design patents are not enough.
This is what I call "user interface".
Will it be possible to modify this to work with other OS's such as BSD, GNU/Linux, Solaris, etc.?
The hoop is not using the software. The hoop is having to install the software.
Why can't the iPod work without iTunes? (It can, but only with a lot of work.)
While I understand what you're saying, I'm not sure that the purpose of a university education is to "make it fun" for professors.
More likely, the purpose of a university education is to learn.
And that does not necessarily require the professor to happen.
There should never be anything wrong with doing work outside of class, or any implication that doing the work is "not enough". Often learning happens in that time outside of class spent "just doing the work", not "in class" where a professor is struggling to "have fun".
The purpose may not be to save money. The purpose may be to have flexibility. To install only what the user wants to install. Maybe the user does not want OSX preinstalled on the HDD. Maybe the user wants to boot diskless with a blank HDD only used for storage or something else, but not the OS.* The point is that it allows more flexibility. Let the user decide what she wants to install. Sell the user the hardware. Charge whatever you want. Then stay out of the user's business. How she uses the hardware is her business.
*There are some real security benefits from keeping the OS on read-only media.