skysight-inc/HackerNews huggingface dataset:
"... in most cases, the people using pirated software would not pay for it if it would be not be possible to use it without buying."

In economic theory, the demand curve is (basically) constructed from the willingness-to-pay (WTP) of people. It is assumed that people with a WTP > Price (P) buy the good, and those with a WTP < P don't.

Your statement would be true if we could determine that only people in the WTP < P group use illegal copies. They would not affect a supplier's sales when they use illegal copies.

But there's no causal relation between one's WTP and one's ability to use an illegal copy. Thus, people in the WTP > P group are just as likely to do so as people in the WTP < P group.

Well, this is not quite right, for we may ask: Who's more likely to be motivated to make or search for illegal copies? Who's gaining the most profit by investing time and effort to search file sharing networks? Those with a rather high WTP or those with a rather low WTP?

If this sounds uncommon to you, ask yourself: What software is more likely to be found in any file sharing network: The popular ones -- that is: those with many people having a high WTP -- or the unpopular ones? According to my observations, the popular ones are more likely to be found. The same holds true for other products such as movies and music.

Whether these losses are compensated by advertising effects, is a matter of the circumstances: To make this reasonable, a supplier needs to sell (more) copies. People with illegal copies may advertise a product, but they are also likely to distribute illegal copies: What good is advertising if it does not increase sales?

Even if we assume that -- in the beginning -- only people in the WTP < P group distribute illegal copies and advertise them, it should be clear that it will also spread to people in the WTP > P group. The longer illegal copies are around, the more likely it will affect the sales of the suppliers.

Overall: Yes, it's possible that illegal copies do no harm to suppliers and may even help them to sell more legal copies. But these are likely to be exceptions to the rule. In general, using illegal copies decreases the wealth of suppliers.

In the long run, it also decrease the wealth of users who want or need software, for it decreases the incentive of suppliers to improve their products or invest money to make new ones.
I'm just popping in because you mentioned codeigniter. Code igniter is great, if you are forced in PhP 4. However, there is http://kohanaphp.org Kohana started out as a fork of codeigniter, and is very similar, except that it uses php5's object-oriented features to create a much more elegant MVC framework.
Yeah, I think this is bad advice. One of PHP's drawbacks is that it is such a loose language. If you don't use a framework, you will most likely fall into the trap that many PHP coders fall into, which is being quite lax with your code and consistency.

Using a framework really helps you maintain some consistency throughout your code. If you don't like what other people have made, build your own.
Join reddit, xkcd, dtoid, ars technica & more - donate your hacker skills to non-profits
Instead of asking for money, we thought we ought to pool the talents of our community (and the greater geek community) to improve the most worthy non-profits we could find (submissions and voting going on until next week). And for volunteering your time, you become eligible for some great prizes...
I don't think you can make loans if you have 100% reserve. No?
Test driven development might help here. The test cases you write will act as spec, ensure quality of what they deliver and will also enable further development. You have not wasted your effort.
Thanks - I'm really excited about the tools, personally.

Preview bits will go out to folks on the mailing list this week. There's a fun road ahead in bringing the framework to maturity - but there 'core' meat of the framework is solid and a nice departure from the current state of PHP frameworks.
You can jump into PHP quite quickly. The syntax is not very different from other languages such as C++ or Java. What takes a little while is learning the built-in functions.
Series A: $800k
(http://www.alleyinsider.com/2008/12/stocktwits-raises-800k)
You could also say "XP is crushing Vista in the netbook market."
Scroll down to read the paper
Not true if the volume of submissions is high. The New page is fairly short and knowing that x% is automatically rubbish is very annoying.
Ask HN: force comments or attach username to downvotes?
I've only been down-voted twice (though maybe this post will increase that number ;)), and each time there was no comment left as to why I was down-voted.

HN is great not only for the links, but for the comments and discussions that surround the articles. Wouldn't forcing users to comment on a down-vote (or maybe just the first down-vote) improve the quality of communication?

I'm left wondering what the other side was/what was disagreed with, and i've got nothing, and no idea what that community members views are, etc. etc.
Well, how familiar are you with HTML, MySQL, (or any other db lang), and CSS? In the end, a PHP file is really just parsed HTML, so anything not between <?php and ?> is just good ole markup. It also depends on what you want to get out of it, since PHP covers so much ground, but given that PHP is more attractive from the back than the front, I'll assume you wanna build some server-side applications. So for starters, in order to familiarize yourself with $_POST and $_GET (the two variables you'll be molesting the most) and the basic syntax try doing some simple HTML pages that evaluates some browser/platform condition and slowly work your way into HTML forms and attempt a feedback form. After that you'll work your way into MySQL functions and how to evaluate their output (this is back-back-end stuff [your typical db commands; creates, queries, inserts, etc]), user authentication comes next along with the global variable $_SESSION, which also considers how to handle cookies and different types of users, and lastly, after you've completed all of the following, you could attempt some sort of CMS (keep in my mind the scale since you're still learning), but by creating a basic CMS you'll slowly start seeing what an MVC pattern is in PHP. It's hardly abstract and quite hideous since you're only using MySQL and PHP, but by participating in this process you should uncover the gist of PHP and why it's so easy. After that if you're still sane, install PEAR and reiterate the process using their libraries else if unsatisfied or overwhelmed move onto something in Java and try JavaServer Pages.
Is there a guide spelling out precisely what each of the proposed changes actually mean? I think I know what they refer to, but hard to be sure if my intuition matches reality from just a terse name. The Colebourne blog post does not contain any description or links for the item labels.
Abstracting (too much), it's violated expectations - like broken promises, people really don't like it.

Taking a tangential step, computer automation is similar when it purports to be able to help you, but doesn't understand you well enough to do so; like MS's "clippy".

In contrast, Google's "I'm feeling lucky" button is automation that fulfills its promise (though the name emphases that luck is involved). Google can predict so well what I want, that this button is (very often) right. An awesome achievement. I added a simple command-line google lookup, to go directly to the page, and it's freaking me out how well it works:

> cat ~/bin/g
firefox google.com/search?q="$*"\&btnI= &
Python Regex Tool on App Engine
Second iteration of a Web 0.1 site? http://thedailywtf.com/Articles/Web_0_0x2e_1.aspx
My experience with several Indian teams at different companies bears out the article. They didn't have the same level of education that a developer gets at a good US engineering/CS school. It was more like at a JC level, a few months of Java then turned loose on the clients. The ones I worked with had several years of work experience, but not the depth of knowledge that one would expect from top notch locals. A lot of the savings was lost because we had to manage them more closely with a local liaison and daily code reviews.

OTOH I worked with a Ukrainian outsourcer that had very talented, well schooled, professional, and productive developers. They were also fairly expensive at $40/hour. Good, but not much cheaper.
1. If by "already supports multiple side-by-side versions" you mean the support for libfoo and libfoo2, this isn't multiple side by side. I mean being able to support foo 2.1 and 2.1.3 simultaneously. RubyGems can do this, and applications that only want 2.1 and nothing later can specify that. My understanding and experience that what RubyGems can do here isn't supported by dpkg or RPM; even if they are, the maintainers of Debian aren't interested in it because it doesn't fit their narrow worldview.

2. Even if what RubyGems does is supported by dpkg et al., this does nothing to help the language or programs written in the language support this without resorting to ugly, stupid, and nonsensical platform-specific hacks. We've already seen people on Ruby doing a few silly things (e.g., RUBY_PLATFORM =~ /win/ matches darwin, cygwin, and win32, but doesn't match mingw -- which is a closer match for win32 than darwin or cygwin ;). Doing "gem 'foo', '=2.1'" allows me to use a specific version (equivalent of -lfoo2 in linking in C++), but if I don't care, I can just require 'foo'. (The "require 'foo'" bit is required in any case; "gem 'foo', '=2.1'" doesn't require anything, but sets the load paths.)

3. The bigotry is in assuming that dpkg or RPM are appropriate for everyone. I would rather have a Ruby-centric system for Ruby rather than two dozen platform-specific systems that I have to know and support. Yes, I'm bigoted toward Ruby and don't care what platform I run Ruby on. I don't want to have to deal with the operating system's package management (or lack thereof, as is the case on systems with wider adoption than Linux).

RubyGems isn't perfect or a be-all, end-all packaging system. It doesn't try to be. What it does, however, it does very well and it does right.
Though you may find some sections rudimentary, this is actually a great primer/refresher: http://devzone.zend.com/node/view/id/627
a) Starting with tutorials is a logical first step, however they may be some bad advice in there. Writing some simple applications or pages to accomplish stuff is good to get a handle on the breadth of built-in functionality.

Please also note that PHP 5 has much better OO functionality than PHP 4. PHP 4 is end-of-lifed, however CodeIgniter is still compatible with PHP 4, thus limiting it in some respects.

I wouldn't focus on too much open source PHP apps, much of them are kind of sloppy-the frameworks will probably be a better code base to look at. Just like any other language you can write sloppy code, but you can also exert some effort and make a well-organized codebase.

The last thing I would recommend is to read about PHP security issues. (Disclaimer, this is my own site) http://flourishlib.com/docs/Security has an overview of security issues, however some of it is focused on using Flourish to fix issues.

b) I would recommend looking at:

- PHPEd (commercial, http://nusphere.com) <- I use this
- Netbeans 6.5 (open source, http://netbeans.org)
- Aptana with the PHP 1.0 plugin (open source/commercial, http://aptana.com/php)

Komodo (commercial, http://www.activestate.com/Products/komodo_ide/) was alright but I haven't tried the new 5.0 release. Eclipse PDT 1.x (http://eclipse.org/pdt/) was ok, but very much a pain to configure-I hear 2.0 is coming out soon.

c) In terms of frameworks, here are a few of the big ones in addition to CodeIgniter, however if performance is a concern, please do check out http://paul-m-jones.com/?p=315.

- http://cakephp.org
- http://framework.zend.com
- http://symfony-project.org

http://kohanaphp.com may be of interest since it was originally based on CodeIgniter, but has been rewritten to use PHP 5 functionality.

Definitely learn to use http://php.net for lots of reference. The comments on function pages can often include a good amount of insight. All functions are accessible via http://php.net/function_name.

If you are looking for less of a framework, but more of a library, I've been working on Flourish (http://flourishlib.com) for a while. I've focused a good amount on security, documentation and usability.
My take (without wanting to seem harsh): get over being down voted a couple of times and don't come up with a technical solution. It happens.
most of my downvotes are from me being deliberately inflammatory, so i generally know why...

a few of them are wonderful mysteries though. fun!
I am currently having a similar experience. I've assembled a young and talented software development team here in Mexico, but the rest of the company (sales, QA, production, etc) is in California. I do not think they are aware of the our capacities and we do not understand where they want us to go. I feel out of the creative process of the company, but we are the ones who actually have the skills (programming) to take it there. So we are stuck doing what we are told to do.
wow, this looks impressive. how long did it take you to get this far?

Me and a friend are looking for a good php framework to build an application on. Any idea on when this will be out?

The support for methods and paths is very cool. Is there any support for media types/content negotiation?
"I might agree with expensive/inexpensive but who says US developers are more skilled than others?"

I would suggest it's more that the highly skilled developers in, say, India are not cheap enough to make the outsourcing worth it. Here's a WSJ article making that argument:

http://online.wsj.com/article/SB118342455118256110.html

"Last year, Mr. Shah paid his engineers in India about half of Silicon Valley levels. By early this year, it was 75%."
I didn't see that assumption being made. The parent's point is that it is (likewise) false to assume that everyone "glomming a copy of some software" wouldn't pay any price other than free, were piracy not an option.
I've been told that JavaServer Pages is greater than any framework out there that PHP has mustered up, I'm wondering if you've ever given this a whirl and how it compares? I don't have a enough experience in Java, which is why I wonder.
CakePHP is a technical disaster. if you want a proper PHP framework, try Symfony
The Cog Chain Reaction - Honda
Outsourcing can be hugely dangerous for startups. I have talked to the founders of several startups who were domain experts but not professional developers. They usually ended up with a product that they couldn't release. Part of the problem was that the founders were not sufficiently technically skilled to communicate their vision across the language and cultural barriers. Another was that they usually ended up with an unscalable MS stack. To be fair, that's pretty common, if you use less skilled US developers.
"The only way to beat outsourcing is to be creative."

Why can't someone in India be creative?
My apology if the following is too detail oriented for HN. I've no affiliation with any of the below, just an interest in reading and researching comfortably on-screen.

I was recently looking for a PDF viewer with annotation, and found the following for Mac. Unfortunately, I'm on Windows; otherwise, this looks to be what I was after:

http://skim-app.sourceforge.net/index.html

http://openwetware.org/wiki/Skim_-_PDF_reader_and_annotation...

Skim maintains annotations in a separate file. I would imagine this also allows it to work with locked PDF's, whereas Acrobat Reader won't permit annotating such. The annotations can be merged into an updated PDF for distribution, if needed.

On Windows, the two seemingly most legitimate options I've found are both commercial products with free versions:

http://www.pdfxviewer.com/

http://www.foxitsoftware.com/pdf/rd_intro.php

These both appear to add annotations to the PDF file, and to be limited by the Acrobat permissions assigned to that file. Foxit Reader says it adds some sort of visible component to the presentation of the annotated page, unless you upgrade to the paid version.

I haven't used them, yet. (I've had some hesitation about installing them.) If anyone has better suggestions for the Windows environment, I'd love to hear them.

Noting Johnny2112's comment re MS Reader blanking the background: For blanking the screen (or graying it), donationcoder has a little AutoHotKey based hack that dims all but the focused window. It's named ghoster, and is available in both AHK script and compiled format. Recently, Spyware Doctor has balked on a few things from donationcoder, but this appears (please to check for yourself) to be a false positive against AHK -- other anti-malware products find no problem.

http://www.donationcoder.com/Software/Skrommel/index.html#Gh...
The whole article is about a common way to persist power and wealth through generations, a method that can't be eliminated by inheritance taxes. And you believe inheritance taxes would eliminate the persistence? Did you read the article? 8)
Looks very much like Sinatra - http://sinatra.rubyforge.org/ - PHPized.

In Sinatra you don't even need the methods. For example:

get '/say/*/to/*' do
# put code here
end

post '/somewhere_else' do
# put code here
end

If the original developer hasn't seen Sinatra it'd be worth checking out for some ideas - Sinatra is becoming quite popular in Rubyland lately so the ideas are reasonably sticky and probably worth porting to PHP.
I'm surprised anyone's self employed in the US with the various hurdles (higher taxes, choosier health insurance) :)
I thought it was interesting that her name is Jessica -- that's not a Czech name and there's no equivalent. So I looked her up and she was born George (Jiri) Fridrich. She's a transsexual. (Not that there's anything wrong with that. Just interesting.)
Oh totally, it's cool for people who are in that camp :) Not sure it's so good for the world as a whole though. There are plenty of stories of shy, retiring mathematicians and scientists who have done great work only to be ignored.
Don't waste your time like I did. I'll summarize it for you:

People don't change as much after 30 because like maybe it's because they have more responsibilities?
"(Validation that a user has a name and email address? Takes 1 line... 1 line of grunt work. Verifying that anyone using these 27 actions is an administration? 1 line... of grunt work. Implementing a search function for lost registration keys? Four lines... of grunt work. etc)"

This doesn't make sense as a definition of "grunt work" to me. These are more like business process rules or requirements. And 1 line or 27 lines or 4 lines of code sound actually more efficient to me than the corresponding English, mock-ups, etc. needed to specify the documentation for them.

In other words, it probably takes you much less time to write those lines of code than it would take to describe the required functionality unambiguously to someone living across an ocean from you.
1: Outsource Django/RoR work

2: The 48-minute work week

3: Profit!
I owned the 1979 edition of this. While I had already been fiddling with computers for a few years before I'd read it, this book and its awesome illustrations (for the time) really helped me "get it."
Short answers: (a) Common Lisp, typically SBCL. (b) Nothing terribly exotic about the selection, but since Lisp libs tend to be Lisp-all-the-way-down (compared to wrapper-on-a-C-lib, common in the Python world) you can use them in creative ways the authors never imagined, which would elsewhere require, say, rebuilding C code with custom hooks. (c) Not yet, but my CTO keeps bugging me to start one, so maybe next week when I have more time...
Also, if any of you would like to become official partners, email me at alexis@reddit.com (all this takes is something nifty to offer as a prize for a lucky volunteer -- it could be a free 1 yr. subscription to your site, pile of schwag, or an extra ATI Radeon you regret using your VC funding to buy)
Thanks! I think PhpED isn't free :(
jgrahamc,
That is some very impressive stuff. Do you know of any good places to start to get into image processing? (specifically the mathematical tricks (DCT's and such))
Off-topic, but I'm curious as to whether or not any Game Developers lurk/post on HN. I've always wanted to make a break into this industry, but the breadth of what a developer must know and is responsible for has always made me feel so Junior Varsity. I've been doing a lot of research into the industry and it looks like Lua, JavaScript, and ActionScript (prototyping langs) are all in the same family of languages that are valuable for VG developers. Having that in mind, what are the general requirements for an entry-level scripting position?
No surprise there. I estimate playing WoW is more addictive and harmful to your productivity than smoking marijuana, and certainly you wouldn't mention the latter to a prospective employer. "Hate" is going a little too far though - probably the manager in question had a bad experience in the past. I doubt if you were a productive employee and you mentioned you play WoW if they would start hating you.
reselling windows licenses and moving to Ubuntu

That's almost certainly false economy, unless you've already spent the time to switch OSes for other reasons (which is perfectly possible!) and you've got multiple Windows licenses gathering dust.

(I would never sell my last Windows license. There's this thing called "IE" that I need to test in. To say nothing of running Quickbooks, which reportedly stinks on the Mac.)

I use Macs. They're not cheap, but we're talking a few hundred bucks over the course of two or three years. Chickenfeed.

The simple cost-cutting measures are best. Power-saving light bulbs are simple. Less commuting is simple. Learning to cook is simple. Complicated tax accounting, building your own personal alternative electrical system, or switching OSes to save a couple of bucks... not so simple.
Thanks. Still confused about the framework. Not sure why CodeIgniter doesn't support PHP 5 :(
Agreed about the Frameworks part. PHP is basically one giant framework that gives you most of what you need (and the few things you it doesn't give you whip up on your own in a few hours and eschew the bloat of the frameworks). That being said, Cake is pretty good.

For an IDE my favorite is PHPDesigner by MPSoftware. Eclipse is pretty good too, just a bit bloated if you like something leaner.
EDITED TO ADD:

Most web hosts support PHP4 or PHP5? Any ideas on this one?
Sweet - well I signed up so I look forward to seeing bits and bobs in my inbox :D
Short answer: No.

I didn't know anything about image processing at all until I read her paper. It took my quite a while to get to grips with all the terminology and ideas. I actually went through that paper line by line as I built my code and looked up every term I didn't understand on Wikipedia and then used links from there to understand what it was all about.

One thing that she needs to be commended on is the clarity of that paper. I was able to follow it and implement her algorithm starting from zero knowledge. She then provided me with the actual images that she had used so that I could verify that my implementation worked.

As with anything I'd suggest finding a project that inspires you and the inspiration will be enough motivation to make you learn anything.
Wow. you should become a detective...what a hunch! (not being sarcastic either...)
You've reinvented Lisp macros in PHP. I did the same thing Rails for caching; this is a classic example of something macros make easy and natural.
I applaud your effort but someone who has demonstrated entrepreneurial excellence can easily find $2500. Still what else you can bring to the table?