Jump to content

Recommended Posts

Following on from my reply to ballhogjoni's What do you think thread. I thought I'd ask the question - what development tools can you not work without? Or at least, what is your top 10 list of development tools?

 

For me (in no particular order);

 

1 ) MacBookPro (and no, I don't have the retina one). Being a long term Linux user it has taken me a while to admit to, but now days, I love my Mac. It's an awesome desktop machine yet still has all the power of unix underneath including my old faithful Bash shell.

 

2 ) Vim. I have been using vim for many years now and wont use anything else. It's light, customisable, on every machine I work with.

 

3 ) Git. Git has version control pretty well spot on in my opinion. It does what it's meant to and stays out of my way, but also has lots of cool tricks that make development so much easier.

 

4 ) Github. While I'm not someone lucky enough to use Github on a daily basis, I do have a few of my own projects hosted there. It's an awesome resource for developers and has IMO improved the lay of the land in regards to FOSS software dramatically over the last few years.

 

5 ) HomeBrew. Coming from Linux to Mac, there are obviously a bunch of tools that would otherwise not be easy to install / update. brew makes this easy.

 

6 ) Vagrant. With most of my development work still taking place within a Linux environment. Vagrant makes it easy to setup these environments in a predictable mannor.

 

7 ) tmux. I simply cannot work without this awesome tool.

 

8 ) Jira. We have been using this at work now for about the last 12 months. With a good workflow and process in place this has been bar far the best issue tracking I have used.

 

9 ) Funtoo. My all time favourite Linux distribution. Super customisable and light weight. Not exactly what I would call user friendly however, but thats cool - it's a great learning tool as well. We maintain around 1200 servers where I work, all of which until recently were FreeBSD. Around 12 months ago however I was put in charge of building a Linux based system for us to use. I chose Funtoo as our base and don't have any regrets at all. An awesome OS that has been great fun to work with.

 

10 ) Puppet. While I have only recently started really using puppet for more than just a few simple tasks this tool is really starting to shine as a part of our day to day process at work. I hail it.

Link to comment
https://forums.phpfreaks.com/topic/276281-top-10-development-tools/
Share on other sites

Interesting topic.  I don't know if I have 10, but here's what I like:

 

Linux Mint - I'm not entirely comfortable/familiar with linux, so for my needs I require an environment that's easy to setup, stable, and user friendly. Mint hits all those requirements.

 

VirtualBox - Sometimes you just don't want to set up a dual boot system. VirtualBox is free virtual machine software that's relatively easy to use. My current work environment is Mint on VB, although I plan on switching to a pure dual boot system this summer.

 

FileZilla - An oldie but a goodie. Indespensable if you're dealing with shared hosts, especially if they don't have a "Deploy from GitHub" option.

 

PhpStorm - The best PHP IDE on the planet. Among its features are:

 

Git integration

Real time debugging with breakpoints

The ability to run PHPUnit tests directly

 

Git - Great version control. Easy to learn, difficult to master.

 

GitHub - A key part of my work flow. While I code in Mint using PhpStorm, I do my layouts and image editing in Windows with Photoshop. GitHub gives me both a central location to access my project files and serves as one layer of backup.

 

GitHub for Windows - The other key part of my workflow. It allows me to handle local repos for my Microsoft projects.

 

Visual Studio - The only way to fly if you do anything with Microsoft languages. Even beyond that, it's a great IDE that's highly extensible. And even beyond that, you can use it to code in open source languages as well. PHP, Python, and Ruby are all supported. The newest version has Git integration, and SASS/LESS is merely a matter of installing an extension.

 

---

 

That's what I use on a regular basis.

My top tools:

 

Git - I used to hate it, now I love it.

 

GitHub - Makes working with projects much more friendly

 

TortoiseGit - Yes, I'm one of those. I'm a very visual person, so being able to use something visual while working on Windows is great

 

PHPStorm - Absolutely awesome IDE

 

WinSCP - Great s?(ft|cp) client

 

Windows 7 - My choice of OS

 

Putty - Connecting to servers

 

Omnibug - Specialized tool for Web Analytics detection

Right now I love jEdit. (I'm on my phone so no fancy linking for me.)

 

I also use Git and Putty every day, and WinSCP when I need it.

 

And one of the first things I put on any computer I work on is a Proggy font. My favorite monospaced font designed for programmers.

MacBook Pro

The Retina one, not mine though, but got it for my work with the wrong keyboard layout, AZERTY, they asked if I wanted it changed, I said no, I know my QWERTY by heart and that way I look more hardcore, and it's just funny to see other people try typing on my laptop.. Problem?

 

Mint, Ubuntu, Win7

Beautiful OS systems. These are the ones I switch between on my PC.

 

Git

What else?

 

PhpStorm

A worthy vi(m) competitor. With the Key Promotor and the Retarted Swing Button Fix plugins installed made my mouse an office decoration.

 

Composer

If the number of starred repos on GitHub may be any indication, then soon the only line of code I will be writing to create an entire application will be require 'vendor/autoload.php'

 

Shell,Bash

Really handy to create small scripts for use during development like: quickly drops/creates/truncates/populates my database (Doctrine + Faker, 50M rows, no problem!), downloads/updates composer, clears cache directories, download/install a divers set of tools I wrote to ease development like generating/executing alter table when doing database changes (based off Doctrine DBAL), ..

Edited by ignace

 

 

Windows 7 - A necessity due to needing SQL Server, but it is a fine OS too. I don't feel any particular need to move to a linux distro or to even setup a dual-boot. Whatever I need/want to do with linux can be handled with a VPS or VirtualBox.

 

VirtualBox - Great for testing things on other OS's or just different configurations.

 

Edit+ - Has been my editor of choice for the last 7 years or so, pretty much the very first thing I install on any new system. I did recently pick up PHPStorm (their end of the world sale) and it is very nice, may replace Edit+ at some point as I learn more about using it. Most likely I'll keep Edit+ around though, it's a great general purpose editor, for things like logs, config files, etc.

 

SVN - I like Subversion and it has served me well. I've not made any move toward git, nor do I really see any need to at this point.

 

TortoiseSVN - Makes SVN nice and easy to use on windows, no need to fiddle around in command prompts.

 

Putty - Great SSH client

 

WinSCP - Great SFTP/SCP client

 

GIMP - For what little graphics / photo editing I do, GIMP is my tool of choice.

 

 

Pretty much all those tools make it onto my development systems. I'm not sure all of them would be "Can't work without" level of need, but certainly I prefer having them over not having them and would be rather bummed out if they were missing.

Awesome, I'm getting some replies.

 

I should probably mention that I struggled to get my list of 10, but I should also mention there are a bunch of cli type utils that I left out. These are things I use every day and would be pretty lost without.

 

bash, python (most of our infrastructure uses it), grep, composer, gitflow, wget, ssh, irssi, ttytter.

1.CentOS / RedHat - GNOME

 

2. Bash / grep / ssh / grub /sendmail / fdisk / make / cURL /etc...

 

3. Bacula

 

4. MySQL / FireBird

 

5. mysql and firebird command line/ phpMyAdmin / MySQL WorkBench 

 

6. GIMP

 

7. Git

 

8. NetBeans / Vim

 

9.Windows 95

Edited by jazzman1

MS Outlook - I use it for work emails and meetings.  I also make use of the task stuff within it.  I currently use Outlook 2013 and the color scheme choices are shit, and it makes it a lot harder to use.  I wish I could go back to 2010 or 2007 but I didn't upgrade to 2013, I had to buy it outright (new computer).  I have not tried 365. 

 

MS Excel* - I work in the web analytics industry.  Lots of data to look at and manipulate.  Excel is great for that sort of thing.  

 

MS Word* - I write a lot of Functional Specification and Requirements Documents.   Word is great for that.

 

* Normally you would buy some version of MS Office which bundles these things together.  Kinda sucks that the "Home and Student" version of Office does not include Outlook :/  but I don't really use any of the other MS software, and it's (slightly) cheaper to buy Home and Student for Excel and Word, and then buy Outlook separately.  It also sucks that they changed the licensing on their shit to be 1 pc instead of 3, in an effort to push to their subscription-based model (365), which does offer it on 5 pcs. I hope MS eventually offers different subscription plans, where you can pick and choose which software you want, because those are the only 3 I really use.   

 

sidenote: Don't even start with the "free" alternatives like OpenOffice.  I've tried them.  They are great for people who rarely ever do anything with things like that and are just trying to float by for like 1 project.  But they suck for regular use, especially when you need to share with everybody else out there who uses MS stuff.  

 

Firebug - Firefox addon.  Great for seeing details about server requests made, debugging javascript, etc.. 

 

HTML-Kit - My editor of choice.  I have both the paid-for version (tools) and the free version (292) and TBH  I personally like the free version better than the paid-for version.  It doesn't have all the bells and whistles as other IDE's and that's precisely why I prefer it.  There's just a ton of stuff in things like PHPStorm that I never need or use, which makes for extra bloat.  My job doesn't really have me working on large projects that span many files. If i were to find myself in a career that focuses on that sort of thing, I would probably use PHPStorm.

 

PuTTY - already mentioned by others.  I use it for my SSH needs.  There's also PuTTYgen that makes it easy to generate public/private keys

 

TortoiseSVN - simple and easy to use svn client.  It's integrated into windows explorer so you just rightclick on files/folders and there's the svn commands.  

 

CoreFTP - My general purpose FTP client of choice.  

 

Charles Proxy - I use the free version.  Sometimes I need to requests being made from browsers and depending on the browser and how its being sent, things like firebug can't or won't catch it.  So this is my backup.

 

Fiddler - Great tool for fiddling with browser requests and responses.  Most of my development work is working with javascript libraries for clients.  Since I usually do not have direct access to their site (or even dev site), testing on a sandbox only goes so far.  This tool makes it easy to for instance look for when a browser is about to make a request to a certain js file and intercept it and use  my local copy instead, allowing me to test my code on the client's site. 

  • 3 weeks later...

Thank you for sharing ... my top tools

google Chrome 

i used to love Firefox but recently i switched to chrome because of the a lot of crashed i get while using Firefox

lastpass

i store all my accounts login credential at one secure place and it's cross platform

notepad ++

it's a lightweight text editor

mRemote

it's an alternative to putty it allows me to store login credentials

NuSphere PhpED 

it's my favorite php developing editor

wampserver

my favorite light weight localhost server

winscp

my favorite ftp client which is better than a lot of commercial ftp clients

Expression Web

which safes me a lot time to design web sites which has become free recentely

Developer's Tips & Tricks (DTT)

Database for Code Snippets (Tips & Tricks) collecting to avoid the double working.

 

best regards

 

 

 

  1. Netbeans

    • ​​Has Git/SVN/Mercurial/FTP built in.

  2. PHP/HTML/CSS/JavaScript/jQuery/Java/etc. auto-complete

Project Management

Other random features

GitHub / Bitbucket

  • Bitbucket has free private repositories

PhotoShop

  • Best photo editor, and has more tutorials than any other graphics software

Nginx

  • Easy to install, high speeds, easy to configure. Overall AMAZING

Google Chrome

  • Favorite browser to use/test with.

Spotify

  • Need some music to listen to while I do my stuff.

Terminal or Putty

  • This one depends on the OS, Linux = Terminal; Windows = Putty

Facebook

  • When I want to rest my eyes for a moment, I like to go to Facebook to see what everyone is up to

Stakoverflow

[this list is only in order as they come to mind, not importance]

1. Debian / Linux Mint : Since the new gnome came out, I transitioned to Mint for it's Cinnamon DE. It's an extremely smooth environment to work AND play in. Being Debian based, it's simple to keep a similar environment to production

 

2. tmux: The most bad ass terminal emulator on the planet. I couldn't imagine my workflow without it.

 

3. Firebug: Completely essential if you build any front-end

 

4. Git(hub): Versioning FTW

 

5. Dropbox: Helps me keep docs, scripts, dotfiles, graphics, etc sync'd across all my workstations

 

6. phpStorm: I used to rag on heavy IDEs. Now, I couldn't do without it

 

7. Bluefish: My favorite light-weight IDE.  It works with SFTP so I can mount a remote server and make quick changes with all the colorization, syntax hilights, and code suggestions one needs.

 

8. GIMP: I often find the need to make quick changes to a graphic, or to grab a layer from a PSD.

 

9. LESS: A language, yes, but moreso an important tool for keeping organized CSS and compiling out minified CSS

 

10. Nano: Once you know how to use it, nothing else matters.

Edited by Mahngiel

2. tmux: The most bad ass terminal emulator on the planet. I couldn't imagine my workflow without it.

tmux isn't a terminal emulator. It's a terminal multiplexer. xterm and the like are terminal emulators. If your using a terminal from a Linux desktop it is likely that you are using a terminal multiplexer (tmux) from within a terminal emulator (xterm etc etc).

  • 5 weeks later...

Jenkins, and all the tools that come with it / integrate into it, especially phpmd and phpcpd. Can't do without it in any company of a decent size. Also Capistrano, although you can do exactly the same with Bash scripts or Ant/Phing build files, it can be a time saver in setting up your deployment process. And Selenium is essential if you want to approach Continuous Deployment (we use SauceLabs but if you have time and hardware you can create your own testing infrastructure -- Xen is a bitch though).

 

These may not qualify as "personal" development tools, but the OP wasn't specific on that ;) We currently use NetBeans as our IDE but are evaluating PHPStorm, it has some nice features NetBeans lacks and seems to handle the size of our codebase better. Only downside so far is the ad-hoc handling of multiple projects: feels like an afterthought. And although obvious, Git is worth mentioning, mainstream now but I remember having to merge branches writing down revision numbers with SVN. That was pure hell. We also use it to enforce our coding standard using the pre-receive hook. Also, Xdebug and KCacheGrind: essential for identifying bottlenecks and generally good practice to employ before (near) the end of every sprint. Also probably not in the spirit of the OP. Who cares, let me also mention Behat (awesome for helping stakeholders defining more concrete requirements) and Visual Paradigm for UML (eats Sparx for breakfast). JIRA + Greenhopper is pretty much unavoidable, although I sometimes find myself longing for Trac. Can't do without Composer either: we use it to manage dependencies between our own libraries as well (it has some limitations but I will never go back to manual dependency management)...

 

Sorry for the scope change, I just started rambling about the tools I'm most enthusiastic about, I realize they're not average developer's tools.. Maybe someone will pitch in, otherwise I'll be content talking to myself :P

 

PS: When someone advocates OSX as a development platform the hairs on my body stand straight up :P I require all my backend developers to develop on Ubuntu (the front-enders work on OSX cause Photoshop doesn't work on Ubuntu but they hardly do any programming). Partly for the principle of it, but mostly because I want them to have affinity the with platform our applications run on. A sandbox on a different server doesn't provide you with that.

 

I'm rambling, sorry about that :P

  • 2 weeks later...

Nothing changes! How are you doing?

 

Haha, wel some things do, but apparently my tendency to produce rants isn't one of them ;)

 

I'm pretty good, thanks for asking. The past three years I've been the lead senior developer in a medium sized company. I learned a lot, but also had to compromise under extreme pressure from the business a lot, and currently I'm just re-evaluating where I stand. I might freelance as an interim lead / consultant for a couple years although nothing is decided just yet.

 

How are you doing? (we can move this to PM if mods object)

 

Edit: sorry I forgot to address you as sensei old man ;)

Edited by 448191
This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.