skysight-inc/HackerNews huggingface dataset:
the university stopped being about pure research and started focusing on applied research because of WW2. It was at this time that the military industrial complex sunk some hooks into the university system.
Although some people, when faced with a problem they don't understand, will just give up and do something else instead.

Admittedly, I don't have any metrics on how many people have abandoned Erlang because of single assignment, or Lisp because of the parentheses, but I'm sure such people exist.

And you might say that it's their loss, and I'd probably agree with you.
But, it seems like it should be relatively simple to make the compiler convert your multiple assignment code to static single assignment form at compile time, with relatively little trouble. If there is any good reason not to do this, or if it is impossible/difficult, then I would understand single assignment. I just think the reason for it needs to be explained.

Similarly, if single assignments aims to satisfy a different set of tradeoffs, and somehow grants some advantage that multiple assignment does not, it seems like these should be clear enumerated.

In Lisp, for example, when new programmers complain about the parens, we usually explain that the they allows code to be equivalent to data and make the code directly be a parse tree. Which, among other advantages, makes macros far easier and cleaner.

I haven't seen any similar advantage expressed other than some hand waving about concurrency. If single assignment makes concurrency easier, how does it do so?
Listening, respect and teamwork
This might do it:

http://news.ycombinator.com/item?id=126617

Television educates you even when you watch Beverly Hills 90210.
Generating revenue and making money are generally considered two different things in business circles. Many believe that making money implies being profitable. It can have the meaning you are ascribing to it. That is, having customers give you money, that's generally considered to be only a part of making money though. The other part is keeping costs low enough that your business generates a profit. Even subject to the more stringent requirements, several of the companies you mentioned qualify.

I have doubts about YouTube being profitable, perhaps you have some inside info on this though. Certainly Google's quarterly reports indicate some challenges there.

Similarly Facebook could be massively profitable if they would cut costs. That profitability would fall well short of justifying a USD15 Billion valuation, but they could be more profitable. It is difficult to tell whether or not Facebook is profitable at the minute, because they can give any story they want as they have yet to go public. Whoever said 'There are lies . . . damn lies . . . and statistics', was probably unfamiliar with the world of corporate accounting, or they would have used 'accounting' in place of 'statistics'.
I was sad to see that not once did the author mention the works of Polya. Discovering new ideas in mathematics ultimately boils down to solving an existing problem in a new way or solving a completely new problem.

I believe students should be posed the fundamental questions that forced many of the most beautiful ideas in math to be discovered. The advantage we have now is that if the students get stuck, they don't have to wait 2000 years for someone to discover how to find the area under a curve. We can give them hints. The teacher can compress time with a well thought out question pointing the students in the right direction.
a neuroscience startup, you say? i'm fascinated!
Is it worth starting "from scratch" in web dev? Straight Python, or Django?
I've dabbled (and even made a living) in web dev for several years.

I started with Dreamweaver, and then gradually learned how to write HTML and CSS from scratch. I then used Dreamweaver to patch together PHP/MySQL for database-driven sites, until I switched to ExpressionEngine because it met my needs for a flexible back-end database to run my sites from.

I've always been strong in design, and so regardless of how patchy my back-end has been, the results have spoken for themselves and achieved my goals. Good writing and design have compensated for a shitty back end (though in time, my HTMl and CSS have become acceptable in quality).

But whenever I talk to someone who knows how to program, it seems like slicing butter for them to do what's required for a web app. Like they can spend a few hours and have something that works. And I've always been strong in math and logic, so I think programming is not a bad fit for the way my brain works.

So here's my situation. I'm getting back into web dev after a couple years of management/product dev in a startup, and I want to build something that kicks ass -- but to start I just want to build a new blog for myself.

I'm asking myself whether I should (1) keep using ExpressionEngine or something similar, in order to get the fastest results possible (I'm not actually too interested in this option anymore); (2) use Python with Django, to benefit from what a framework offers; or (3) use Python to code something from scratch, with the aim to understand what I am doing at a more fundamental level.

I'm looking to strike the right balance between getting shit done fast, that just works, versus doing things in a more sustainable way (ie. actually understanding how to program and benefiting from the resulting flexibility and power).

Anyone have comments on this trade-off / what kind of learning curve to expect as I debate whether or not to use a framework like Django for my first real Python app?

I read through a couple books on Python this spring and liked it (but am by no means proficient yet), so that's my language of choice. The question is simply how deep to go. I want to spend the right amount of time learning, without heaping an unattainable amount of work on my shoulders so that I can never get anywhere.

(If I continue with python I'll probably also continue with the book "Software Engineering for Internet Applications" which I also started this spring.)

Also feel free to let me know if I'm even asking the right questions. I just hate the idea of wasting months of my time on the wrong path.
The only thing that could have made that worse (aka better) is a 40-year old Bette Davis stealing the show as the "bad" teenager.
The reasoning that appeals to me most about single-assignment is the idea that it makes it easier to reason about what actions could have altered the state upon which the currently considered code operates. It makes explicit which code branches a particular expression is dependent upon. Supposedly this simplifies refactoring and reasoning about code. This justification sidesteps the idea of facilitating concurrency. It's similiar to the reasoning behind pure functional approaches where side-effects are avoided.

I've personally worked with code where single-assignment would have avoided bugs which were introduced because later modifications did not completely account for previous possibly state-altering actions. On the other hand this article shows places where enforcing single-assignment on the programmer makes reasoning yet more complicated.

I'm not completely sure what my final opinion on the subject is. Side effects, state, and assignment can all be considered orthogonally and I'm not sure what the best way is to deal with them. Maybe Haskell has the answer with its Monads, but I haven't examined the language closely yet.

One thing I liked about Pascal is the difference between the := (assignment) and = (equality) operators. You also had Procedures with side effects and Functions without. Separating these concepts definitely added to the pedagogical utility of the language.

As I learn more about these concepts I find myself more explicitly managing assignment, state, and side-effects in my code. Even in imperative or OO workaday languages such as PHP or Java. I will attest that it does make a difference in the ease with which I can decouple and maintain an ordinary codebase.
I'm going to go out on a limb and say it probably has something to do with culture. a culture that promotes a education is going to churn out more curious, creative people. And i don't mean "stay in school kids" commercials, I mean in all the unspoken assumptions about the world that are communicated from parents and other authority figures from a young age. You can't fake enthusiasm about education. The U.S. currently does not have it, so of course kids are smart enough to pick up on this and place education further down their priority list.
oh yeah, that must be how Kevin made $60 million in 18 months

http://www.businessweek.com/magazine/content/06_33/b3997002....
Were I you, I would start with Django so that I would have an application up and running faster. And then, since Django is open source, start poking around at the internals to see how it works.

I would wait to roll your own web framework until you've had a little more programming time under your belt. Regardless of whether you may be a quick study or not, rolling your own framework is going to have all sorts of strange issues come up, and sometimes it's nice to be able to ask around on a forum, mailing list or IRC for help. Django has one of the largest (if not _the_ largest) Python community; at least as far as currently common frameworks go.

Django is quite nice as a framework as well, it may turn out that it's all you ever need. There are quite a few people out there who use it for every project they work on, with great results.

[Edit: Changed "webapp" to read "web framework"]
It doesn't matter how unfair your obstacles are. The fact is, obstacles in your path will not go away by themselves -- your only say in the matter is whether to try and overcome them, or to give up and complain.

I don't think he's justifying those walls in any way. He's just saying, if you have goals in life, you've got to accept the walls that are in your path and make the best of it. Anything else is a pipe dream.
cities are vestigial for high technology jobs. the only thing they make sense for is manufacturing.
Is the existing level of pricing justified at all ? I mean a $209 book does sound like it carries a huge margin.
Why Google Isn't Spending $200 Million On Digg
My community college chooses books that cost $15-$20, it was nice. Then at the University levels they hit me with $200 books. As for new editions, I understand that Biology changes frequently, and the books might need to be changed periodically, but classes like Calc I shouldn't be updated every other year.
Create an account at gigapedia.org and you'll see the extent of books available online for free. It's amazing. It's become my new Amazon for checking out new stuff that I'm not sure if I want to buy.

(All yee free market crusaders, don't worry -- I still have a regular truckload of books coming my way from Amazon -- as much as my budget allows.)

How unfortunate that my budget can swallow much less than my brain!
Scoble doesn't know anything about VC. They are just the middlemen, they need to report back to their investor. Do you think they risk funding you and take the heat explaining to their investors?

I can criticize bill gates for not investing in my dog breeding business becuase it could get bigger, and keep on whinning, but what is the point?
All I can speak on is the digg stuff, but it reads like it was dictated to her by Digg PR. And in fact the only person, other than Jay and Kevin, who manages to get in a digg picture (there's some digg employees in a equinix-related photo) is a PR person.
For intro books for self study, I recommend Dover publications - around 12 dollars a book.
I don't know much about it's safety, but I do know that it's very clean. I read somewhere (either popsci or sciam) that they have found a way to recycle the waste repeatedly, dramatically reducing the amount of waste produced.
If you're feeling lazy and don't want to install anything, you can also find websites with links to filesharing sites. They have the same kind of defense as a torrent tracker in that they don't actually host files, they just have links. They frequently feature highend technical books from Springer Verlag, Elsevier, et al.

We're through the looking glass here, people.
Most teachers side with the students when it comes to books costing an outrageous amount. So most of them avoid feeding publisher's pocket books. i.e. When I was in college most teachers just uploaded copies of homework problems on blackboard, and never used any of that published based info. + all of the problems were based on material discussed in class, so you never had to buy the book in the first place.

There are obvious exceptions, usually when the teacher is the one who wrote the book, and wants to profit off his students. i.e. I had one class where the guy had us buy 3 books, 2 of which we never even used. Surprise, surprise they all had the teacher's name on the cover.
"Justified" is a concept that exists only in your head. Yes, the most successful textbooks make millions of dollars for their publishers and authors (Paul Samuelson's Economics for example). The least successful ones lose lots of money. What do you mean by "justified"?
Sounds like profiles of startups and their teams with both authors, jl and Sarah Lacy, having done their homework. Having read both books, it was well worth the time spent.

I find it odd that people go through life with fingers in their ears and are proud of it.
He was specifically calling out Dave Hornik for his bit about not investing in iPhone apps because it's too small a market. There's too much VC investment in junk they think will be the next big thing rather than things that might be smaller hits, but actual hits. It's the difference between a $1 scratch-off paying $5 vs. buying $30 of Powerball tix in hopes you hit the jackpot.
Might be easier to do something like:

yourFileName.jpg?lastUpdated=12345

where 12345 would be the unix time of last file change.
The problem is that the average textbook sells a small run of copies, and doesn't benefit from economies of scale. Unfortunately, it seems that the professors and the publishers both like the current system, and the students have very little influence on the process.

There are some solutions, but the incentives don't seem to be in place to encourage them. The best seems to be reducing the overall number of textbooks, allowing each one to have a larger run and thus to better benefit from economies of scale (and be cheaper to buy at the same profit margin for the producers). But to achieve that we would have to stop letting professors choose their own books, and professors are not known to appreciate being herded.
I write my CGI scripts in C -- but only after writing all the libraries I'm going to want.

There are merits to "understanding what you're doing at a more fundamental level" as you put it -- but that doesn't mean that you should waste time writing the same code many times. Understand it, write a library, and be done with it.
Judging by this review it appears Lacy did a fantastic job writing about life in a land of koolaid. To that effect, it may be worth a read....
I am not a professional developer, and am more akin to a hobbiest programmer/developer, so take this for what it is worth.

Like icey said, pick up Django and learn it - this will get you results far faster and of a higher quality then rolling you own straight out of the gate.

From your post, it sounds like you will be learning to program, learning python and possibly learning Django all at once - an ambitious goal to say the least. Combining the three - centered around Django I think will be the most practical approach for diving in - far easier than learning to program in python and tackling the particulars of designing a web app framework from the ground up. djangobook.com , despite its (over-come-able) errors, will give you a nice base to start from. "Practical Django Projects" is also getting some good reviews, but I have not had the chance to check this one out yet.

I think you will find most of Django relatively easy to learn - and what is not so easy, will highlight some of the tougher aspects of developing a web app framework so you know what to look closer at and beef up on in the case that you do roll your own in the future.

Also, like icey said, once you become versed in Django you can decide to dig around in its internals. This will give you the chance to see what is already optimally designed (no one should reinvent the wheel) and what you can stand reinvention or redesign.
You shouldn't try to learn a language with an application framework. I also recommend you don't try to learn Python with a web app. The web is a crazy hodge-podge of standards and a web-app is complicated by how many different problem domains it has to contend with. Write some programs to organize your mp3 collection or filter your email or something.

Also, keep in mind that if you haven't done a lot of programming it will take quite a lot of experience before you're writing apps that are maintainable and reliable.
Kinda interesting, when you consider that the fact that this day was imminent was why he was able to help and inspire so many total strangers.
Patrick of WebMynd is a solid guy.
When I went to college (2005 grad), almost all my textbooks were optional. A couple friends and I usually pooled our money and bought one to share, which was great for Midterms/Finals, since we studied together anyway. The books I actually kept were things like SICP, which were cheaper to begin with.

I wonder at what point the online editions of these books become so detailed that they compete with the University course itself. A lot of them already do all the grunt work for the Professor (giving quizzes/hw and grading them). All you have to do at that point is get accredited and make some kind of exam system and you have a substitute for the actual class.

$209 seems awfully pricey for a book, but not too bad for an intro course in Biology. And frankly, your intro courses are ripe to be taken over the net, because they are already given in anonymous lecture halls with 1000 people in them.

Imagine some student showing up in the Dean's office with her transcript from Prentice Hall, showing off her 4.0 in online courses and ready to dive into her major as a Junior.
Sailer's other writings are no good reason to downvote the factual, relevant excerpt above from user 'occam'.

And regarding those other writings, do you think you can give a fair summary, and a convincing refutation, when you haven't read them?
I've also found that avoiding statement-order dependencies (like those introduced by multiple assignment) is good practice even in Python/JavaScript/Java/C. Why make it harder to reason about your program than it already is?

The example in the article could easily be solved if Erlang had a function composition operator, eg. Haskell's

baz . bar . fab . foo $ x

or Eve's

x -> foo -> fab -> bar -> baz
Efficent Market Hypothesis: irrational to compare prices?
Is it irrational to compare prices / read reviews for highly commodity things like desktop computers and monitors given the efficient market hypothesis? Does it make sense to spend time reading reviews at all?
undead,

You shouldn't try to learn a language with an application framework. I also recommend you don't try to learn Python with a web app. The web is a crazy hodge-podge of standards and a web-app is complicated by how many different problem domains it has to contend with. Write some programs to organize your mp3 collection or filter your email or something.

Also, keep in mind that if you haven't done a lot of programming it will take quite a lot of experience before you're writing apps that are maintainable and reliable.
Unless you're in pretty advanced bio classes, it doesn't change every year like the textbook editions suggest.

Also I have had community college classes where the text cost upwards of $200. I've also had classes where the used book cost $5 and the prof was willing to buy it herself if you couldn't afford even $5...
Some people take that viewpoint.

But in my view, math is about getting the right numbers, and you don't fully understand a problem until you can get the right numbers out. Here are two examples:

1) Theorem: det A != 0 implies Ax=b has a solution for a square matrix A.

If you actually try this, you'll discover all sorts of matrices A for which the textbook method fails. Thinking carefully about how to find x in the presence of rounding errors leads you to discover condition numbers, numerical range and all that other interesting stuff.

2) Theorem (circa 1870): Fourier series work. (In particular, they converge pointwise.)

Gibbs: I tried, it didn't work for discontinuous functions. I made some graphs, they are terrible. WTF!

Eventually, people paid attention to Gibbs and discovered Gibbs ringing. Trying to figure this out led us to learn about uniform convergence, Hilbert spaces and all that.

Of course, I'm a numerical analyst, so I might be a little biased.
What Hornik says seems 100% obvious. iPhone is still a tiny percentage of the market. That said, they're disproportionately likely to use the web and apps I would think.

But still, you have all of the negatives you do with Facebook Apps (capricious overlords in total control of your fate) but with something like 5% of the user base. And while iPhone users are clearly more engaged with that platform than, say, Win Mo users, they're nowhere close to Facebook users.
I've had that happen with econ, math and some other classes...and usually instead of buying the book to get the code you had the option of just paying for the online access. Like, the book would be $90 with the code, but the code itself would be $20 you can pay with a credit card (i.e. if you bought the book used for, say, $40, and you wanted just the online access).

I actually haven't had a class where the book was the only way you could get access to that.
I'm looking into transferring to a university to finish my BSc in computer science (dropped out of HS, went to a community college), and all the ones I've looked into usually had some sort of cap on the number and type of online classes you were allowed to take. Unfortunately. I would not mind taking nothing but online classes for most intro classes where hands-on stuff was either not necessary (like..CS?) or where you only had to actually show up to class for a lab (like chem, bio, anatomy..).

That being said, I took online classes because it let me slack off and then still get an A in the class, but it actually took more effort to get the A because of the extra work to prove I wasn't just showing up to take exams. But the timing was more convenient for me. Sooo..
Anybody outsource their startup?
I know there was a thread earlier on this topic but I am here to talk about legal things.
So I have an idea that I could develop myself but I do IT consulting fulltime. What I could do with my job is to write specs and design but coding isnt somethhing I am looking forward to at end of the day- simply because that what I did whole day anyways. Architecture and design isnta chore so I am thinking of outsourcing coding to a guy (and few developers) in bangladesh . At the same time, I am planning to submit my idea to Ycombinator so if and when my idea is picked up for funding, I already have necessary resources to build a prototoye rapidly and look for additional funding.

So my question is : what does it takes to protect my idea when working with these guys? The only thing I am aware of is getting a Non disclosue agreemnt signed from them . Anything else? Appreciate any input on my situation.

And by the way, will Ycombinator cosider funding me when I am outsourcing work somewhere else?
I'm not. Should I /slit?