Mar 3 2011

This was a bit annoying – basically I did some updates and so on to Eclipse PDT a month or so ago and after I found the comparison editor (e.g. right click two files > Compare With > Each Other, or comparing Git history) had stopped working. It just showed a blank grey screen and nothing worked (e.g. Checking for software updates). I hate fiddling with Eclipse to make it work (I hate Java) so I didn’t bother doing it. But today I really needed it. Thankfully it’s actually a reported bug that has a solution. So you don’t have to trawl through the whole bug report, basically the steps I took to fix it (from the bug) are:

  • Go to Help > Install New Software
  • Enter http://download.eclipse.org/releases/helios into the “Work with” address
  • Wait for it to download the packages list
  • Type PHP into the filter text box
  • Three packages should appear, incidentally they are all the same at time of writing.
  • Check PHP Development Tools (PDT) SDK Feature 2.2.1.v20101001-2300-… (snip)
  • Click next and follow the normal installation procedure for packages

This worked for me gladly, and hopefully it’ll work for you if you have the issue, but as I’m no expert with Eclipse-wrangling, I’m afraid I can’t offer any more support on this if it doesn’t work, but good luck, hey?

Feb 12 2011

I actually came across this today. In case you can’t see the screengrab I made, or think it’s doctored (apart from blurring the application name), it really does genuinely say:

…requires a more current browser, such as Internet Explorer 5.5 (Windows), Mozilla 1.7, Firefox 1.0 or Netscape 7.2.

I had to actually read it a few times. To put it a little more in perspective, I’m using Google Chrome 9.0.597.84… What I don’t get is why anyone would think IE 5.5 is a current browser, in any sense of the word. Well… that’s shoddy browser detection for you!

Feb 6 2011

I occasionally get some kind of a brute force attack trying to get into my server. Thankfully it’s pretty easy to spot (/var/log/auth.log gets filled quickly), and just as easy to put a stop to (unfortunately not once-and-for-all).

All you need is iptables installed (apt-get install iptables), and just run:

$ iptables -A INPUT -s [ip_address] -j DROP

Where [ip_address] is the IP from the logs that you want to block.

You can view your current iptables firewall list and check the IP has been added by:

$ iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
DROP       all  --  [ip_address]         anywhere
--snip--

Easy! There are other ways of stopping attacks such as brute force attacks (such as limiting access to SSH to certain IPs for example) but this is just a simple quick post, I’m not going into massive security rant here!

Feb 4 2011

One of the excellently useful tools by the awesome aTech Media is the handy deployment tool DeployHQ. It’s incredibly easy to use – in fact they say “So simple, your Nan could deploy your project!” And once it’s all set up it really is that simple. I won’t go into the details of how it all works because it’s easy enough to sign up for a trial yourself and have a play!

One thing I did run in to was configuring my FTP server. It turns out that the user that DeployHQ logs in as needs write access! Whodathunkit, rite?!?! So anyway, make sure the FTP user you’ve created for DeployHQ to deploy to your FTP server has the right access to read, write and delete files. DeployHQ will just say it can’t connect, rather than a useful message such as “we connected fine, but couldn’t write a test file” because that’s what they do – to check your FTP is set up OK they try uploading a file and deleting it.

But the whole last paragraph is a bit null and void really because the best way to deploy with DeployHQ is to use SSH/SFTP server to deploy. It gives you the awesomely powerful tool of being able to not just upload, but run commands before or after, for example you might need to create some directories before the upload, or perhaps delete a cache or something. Or after upload you might need to chmod/chown a file, or check a project (e.g. Zend Framework) out using SVN once your own project is uploaded. SFTP makes this so much more flexible on DeployHQ, so I highly recommend setting that up. Not only is it easy, but you can do SSH key authentication instead of user/passwords. Huzzah!

While you’re looking at handy tools, why not sign up to the super useful and powerful project management and code hosting tool CodebaseHQ (please use this link as it’s an affiliate link!).

Jan 28 2011

I’ve started using CodebaseHQ recently for hosting Git repositories, managing client requests and ideas (using the tickets) and time tracking to start giving me more of an idea of how much I should be billing my clients. I’ve been absolutely loving it, and I’m excited to hear they’re working on a v4 big update which I’m hoping to be part of the beta for. There’s a few things I’d like to see in the next update:

Time Tracking

I’ve found time tracking to be invaluable – I’ve not done it for freelance/personal projects before, but I’m starting to find it really useful – in fact more useful to me than time tracking at work. At work it’s important to our commercial team to see how much a task has “cost” them as it were, but previously I was of the mindset “why bother with my own stuff”? I have since realised it’s important because it places a truer value on a fixed cost quote you have given the client. You may have over or undercharged a client, and although your contract may not allow you to charge more (or less!), it allows you to learn from your mistakes and charge your next client more effectively.

What I’d like to see in Codebase v4 is the ability to view the time spent on a particular project overall. Then I can calculate what I should have charged the client based on an hourly rate. Additionally, I’d like to see it broken down by category (for example I spent 40% of my time doing Database work), and also when you’re viewing a ticket to see the total time logged against that ticket – although that is slightly less important I feel.

Better Integration with DeployHQ

DeployHQ is another fantastic tool, and with any paid-for Codebase account you get a free DeployHQ account with up to 5 projects – so it’s a no-brainer really. It makes deployment easy from any Git/Hg/SVN repository (not just ones you host on Codebase!), but I’d like to see it get even easier. Firstly I’d like to be able to automatically log in to my linked DeployHQ account so I don’t have to enter another set of credentials. Secondly I’d like to be able to link a Codebase project to a DeployHQ project and click a button in Codebase to automatically open the deployment wizard (again, without having to log in). I think that’d make my life just a little bit easier.

Better Ticket Management

I really like the simplicity of the tickets. It’s just enough information for me to handle without getting it really complicated, and far more useful that GitHub’s ticket system (comprising of description and comments, and a status of open or closed – and that’s it). Using milestones with tickets is also a no-brainer and makes life so much easier. I would like to be able to sort by more than one thing in the ticket list though – e.g. by Priority then by Status. I’d also like to see the ability to change the available ticket types. Even though Bug, Enhancement and Task covers off most bases, I’d like to be able to add a couple more types in, e.g. “Wireframing” or “Design”.

HTTP Public Read-Only Git Repositories

I’d like to be able to share an HTTP read-only git repository URL for people to clone source for some of my open-source type projects, e.g. http://codebasehq.com/<username>/<project>/<repo>.git but that’s only a “nice to have” thing. I can cope without it…

Don’t Remove The Ability to Archive Projects

I’m not saying this because I’ve heard they’re removing it, I’m saying don’t even think about it because it’s one of the most useful things about Codebase. The ability to archive a project and safely store old clients code without having to archive them to a separate server is just fantastic. Not only that, but the ability to re-open the project in case your client needs more stuff done is simply terrific. I love this feature, so to pre-empt any move to remove this feature, please please don’t remove it! :)

Conclusion

Reading that list back shows that they are all minor things really, which shows just how powerful and useful Codebase is. I highly recommend you sign up for a 15-day trial and check it out for yourself. I do ask that if my article helped twist your arm that you use my affiliate link to sign up which is:

http://www.codebasehq.com/t/vy1vushh8we3mh7j