Hacker Newsnew | past | comments | ask | show | jobs | submit | samlev's commentslogin

I know PHP is horrible, but I use it, and so do thousands of other people.

Until there is something else where you can deploy a prototype by dragging a single file onto a server with a FTP program, then PHP is serving a purpose that no other language can meet.

So stop crying about how PHP is horrible; stop trying to fix what is obviously a broken language; make something else that can fit this need, and you will kill PHP.

The only reason why still PHP exists past hobbyists is because people who start businesses want a fast prototype, cheap hosting, and no fuss. It may not be ideal, secure, fast, scalable, maintainable, or anything else, but if it's making money in the shortest amount of time possible, with the lowest cost barriers, then it's a success.


Open Source. Sure, you don't get paid for it directly, but it can get your name noticed, and show people that you can code.

Either contribute to an existing project, or start your own.

Think of it as code busking.


Markov chain generator seeded off existing comments?


Going freelance isn't in itself a poor decision. Quitting a paying job without a steady stream of work already lined up is.

Start trying to build a customer base on the side. Once they're bringing in enough to cover your expenses with a reasonably healthy percentage over that, then consider quitting your regular job.

Freelance work is not steady work, so you have to be sure that you can cover your expenses with regular work before you should be thinking about dropping a regular income for it.

You will need to build up a steady base of regular clients, and build up word of mouth. If you're not a designer, then it becomes really hard for people to discover you in any way other than word of mouth.

tl;dr: Don't quit your day job. Work extra hours until you're earning enough regularly and reliably to cover your expenses, then consider dropping your full-time job.


what works for some doesn't work for others. I quit my job without stream of work lined up and am not thinking of going back to a regular job.

IMO, It depends on whether you have enough savings or not (6+ months seems a minimum, I had more like 2 years) and whether you have a solid network already, and a few other parameters (your risk aversion for example).

Working a day job + having another salary worth of client work before you can leave seems like a recipe for burnout to me - but again, everyone's different.


Same advice I've been hearing from a number of sources. Having two clients plus a fulltime job feels like I'm close to overloaded already, but I guess that's not a bad thing.


One more reason why software patents are a toxic idea that should really just go away.


I tend to have... Opinions... about project and task management software. I'll be happy to give it a go and pass on any thoughts/suggestions/problems that I have through the 'feedback' option.

How would you be monetising this? A 'per seat' option, a 'per project' option, or some other way? What are you thinking of charging?

#EDIT: Also, who do you see as your main competition in this field? Who are you gunning for? What frustrations with other software/solutions drove you to build this?


Our main competition is probably 37signals' Basecamp (and their upcoming Basecamp Next). They really do the best job selling to small businesses, especially businesses that do client-based work.

There's a surprisingly small amount of quality software that caters to this market. And virtually none of it does a good job with mobile, or with integration into other services that people commonly use for work.

Our plans -- once finalized -- will probably range from $25-$100/month.


Within the workspace right now you can view the paying options. We are going to be charging per project, and for space. And possibly for one or two higher value features.

Does that make sense? Interested to hear your feedback.


Yeah, I stumbled on to the payment plans. I'm not certain about the price points you've set there - it would ultimately depend on who your target audience is, and if they would be willing to pay $1200/year for 70GB storage and your current feature set (and branding, I guess).

It looks like you're trying to go after basecamp here - everything (interface wise) is as simple as possible, but it adds conversation and extra description to todos, which is an improvement over what they do.


The short answer is "You get what you pay for". There are plenty of 'cheap' contractors who get as many jobs as possible, churning out bad code that kind of does the job. Most of these will be "copy and paste code" style contractors who only write a little bit of relevant code to make it look "right".

I would, generally, avoid any short-term developer who's charging under $50/hour.

The other thing to note about elance, vworker, etc. is that there are a number of companies in very low-cost places (such as India, Pakistan, etc.) who will then re-distribute the work to their own employees. They tend to produce very low quality work, and there have been some horror stories about these types of developers using the job to insert nastiness into your site for their own ends (why hack a site to insert your malware when someone will give you access and pay you for it?)

YMMV. Treat them like any other person you want to employ and check them out before giving them much access or responsibility.


Your first step is to look at a few simple tools that could give you ways to get perceived (and actual) speed-ups. These are your low hanging fruit, before spending time (and money) on infrastructure upgrades.

Look for a 'YSlow' plugin for your chosen browser (they exist for Chrome and Firefox), which can help you to identify things that are causing your site to appear slow.

After that, then I would look at CDN, and then I would look at database optimisation (many people just don't "get" indexes, and don't understand how much of a difference they can make), and finally code optimisation.


That's good advice, but that's what I need help with. I don't know how to look into database optimization, CDN, etc. Where should I go to find someone to help? Are there forums, or services that do this?


You could probably hire a free-lancer to get most of this stuff going for you (there are plenty of sites around for hiring people to do small jobs).

Ultimately, though, you should look at trying to do as much as you can yourself. The better you understand your system, the better you can run your company.

Still, CDN and database optimisation isn't the first place to start. As I mentioned, look at YSlow, which should give you a few places to work on for optimising your sites.

As mentioned by someone else, depending on the technology your sites are running on, there may also be plugins/tools available to speed things up with little to no real effort.


Anytime I need to figure out how to dig deeper into a technical problem, I start with http://stackoverflow.

A lot of questions like yours have already been asked with hundreds of great responses. Just spend an hour searching around for database indexing, using a CDN, and writing better sql queries and you'll have pages and pages of invaluable information at your fingertips.


I have used: Trac, Redmine, Basecamp, Trello, FeatureZen, ActiveCollab, and a few others (including in-house trackers that I helped to build).

They vary wildly from far too technical for clients to use (Trac, Redmine); to too rigid to handle fast moving tasks (Trac and Redmine again, ActiveCollab); to too simple for complex/long-lifed/complex tasks (Basecamp, Trello).

FeatureZen is a pretty new addition to the stack (made by someone here at HN) and it's showing promise, but it's still very young.

I also came across sprint.ly recently, and thought that it looked interesting. I've put much thought into making a task tracker that fits "the real world" (whatever that may be), but every time I think too hard about it, I baulk at the size of the task.

In short; find something that suits your style, use it. If you need something different, don't be afraid of using two things for different situations. It becomes a bit of a nightmare to manage, but if it's just you, then it's easier to keep on top of it.


I've tried several myself, mainly time trackers though. I came to the realization that time tracking wasn't as useful for me because I never remember to stop the clock. Especially since my job generally has be doing multiple things at once.

My task tracking right now is just simple notes of what I've done today. Later when I need to bill hours to different budget numbers I can go through the list as generally remember how much time I spent on each item in the list.

What I've found recently is I've been adding more notes and also putting todos in the same list. I also have a separate calendar reminder to make sure I fill out my list at the end of the day. It's starting to get complicated enough I'm considering throwing some code at it.


Just to be a little more clear. Professionally I'm a sysadmin not a developer. So generally I spend my time supporting at least several different projects a day while also getting all the KLO done. At my place of work some projects have different budgets, so I have to track my time to make sure I'm billing the correct budget number.

This is what I'm looking to improve on. Right now I basically track it all in a doc, simple dates with a list under them of what I've done. When it comes time to fill my timesheet I got back and look at it day by day.


As tempting as it might be, no. I would never do this. Not only is there an issue about professional trust, but it's a vulnerability that you're deliberately building into a system.

I know that it's hard, but if you suspect that a client isn't going to pay you, don't do the job. There's no point in 1) doing the project and hoping (if they don't pay, then you're not only not getting that money, but you're losing time that you could have spent looking for more reliable clients), or 2) wasting time building in vulnerabilities and then charging the client for the privilege.

If you realise after you start a project that a client may not pay, talk to them about it (in writing/email), and either cut off the project then (once again, no point throwing more time at a bad client), or take them to court (even just small claims court).


^ Absolutely this. You'll entirely risk losing your professional reputation, how much work do you think you'll continue to get if people realise that you're not only building in a vulnerability but also willing to use it if the situation isn't 100% to you're liking!

Once you get the impression your invoice will go unpaid either take legal action like most 'civilised' people, or just take it on the chin and walk away (warning other developers off if you like...)!


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: