I got into BBS (anyone remember those?) and programming on Apple II computers in elementary school… so I’ve been developing for a long time. Serious development started in 1995 when I read an “intro to HTML” insert in a PC World Magazine. I was just thrilled I could create something that someone on the other side of the world could view instantly. It seems silly today because basically everyone takes it for granted that this is easily possible.
Development for me was the ultimate way for me to enjoy seeing my work being used - whether that use was for a business or for someone just fooling around on the web.
I’ve been using Macs for the past 10 years. After the Mac Pro (the good one - the cheese grater tower) I switched to iMacs and currently have a pre-5K iMac that like most Macs I've had has been reliable and served me well (although next year I'm upgrading). Apple Magic Trackpad and Apple Magic Keyboard.
I am big on backups so I have a Drobo with 24TB+ of local backup and off-site backups.
I’ve tried three monitors at once but found it too distracting so I've gone back down to two.
I have an iPhone 8+, numerous iPads and iOS devices, a windows laptop, and a 2018 MacBook Pro.
I have noise-canceling headphones and AirPods… perfect for listening to podcasts while exercising or when my children are home while I'm working. 😉
Most of my work centers on WordPress, and after all the fancy (some good, some not so good) applications and technologies that allow you to establish a local dev environment, I still prefer MAMP Pro. For most of what I do it’s straightforward and doesn’t get in my way, plus I'm able to keep up pretty easily with the latest PHP versions.
I use a variety of WordPress specific tools including WP-CLI which does a great job of handling many tasks on the command line. I’m currently using Circle CI, Cypress, and Codeception for various forms of testing with some of the commercial plugins I’m involved with… actually enjoying writing tests currently! Happy days!
Github is my repo farm of choice and I recently switched from Sublime Text to VSCode. I try not to have too many extensions in VSCode and be as minimum as possible, although I'm still trying to find the best work environment for me in the app which means I’m trying at least one new extension a week.
Difficult to say, since I tend to visit and go down a variety of different “rabbit holes” on Github. Here’s are the last five public ones I’ve visited today:
I work a lot in open source, PHP, and WordPress. The technologies I'm most excited about primarily are ways of making the work I do in those areas more efficient and the end results more performant.
I have a few approaches depending on what I want to do and where physically I'm working. I’m more comfortable working from my home office iMac so I do more complex and custom work there, usually if it involves custom modules or libraries being installed via CLI or something similar.
If it’s a personal project, I usually start a new public or private repo in Github or I just spin up a local site on my machine. More often than not now I spin up a droplet on DigitalOcean especially if I just want to play with some new tech and don’t plan on it living very long, or for demos for my local meetup group.
I primarily work with Github for the public work I do, and I'm getting deep into the weeds there with integrated testing which I find amazing and has saved my butt on numerous occasions.
My children. They already know more about coding then I did at their age and there are so many more opportunities open for them. All three of my daughters are indeed long term personal projects and will outlive anything I'll ever code or develop on a computer or device. Did I just cheat the question there? :-)
I think beginner developers are under a lot of pressure to learn as much as they can… as FAST as they can… to earn as much as they can. I think coding camps and online courses tend to try to push beginners along a path in a rapid manner. I think some developers might need more time to grasp the fundamentals of programming and development - such as testing. I think the quality of your code - including the organization and testing - is more important in the beginning to understand the language itself. Some beginner developers still don’t use proper version control. These are concepts that should be picked up right after learning a “Hello World” program.
I also think many beginner developers need to understand the human and community aspects - how to interact and properly treat OTHER developers is just as important as writing good code. Later they should remember to help others out that are just starting their journey as well.
How to keep up with technology and trends. Although you don’t have to adapt to all the latest trends, it’s important to be selective and aware of what path you should be considering heading down… and what your competitors (or even just other developers) are looking at. There’s so little time in life today, it’s a challenge to set aside non-development time to reflect and research.
Well, if you ever need a gallery plugin for WordPress check out Envira Gallery (www.enviragallery.com). LOL. I do a lot of work with various WordPress plugins like BuddyPress and Gravity Forms, but if you are outside the WordPress space and ever want to take a peek at the wonderful community check out the closest WordCamp in your area (wordcamp.org). There are also some great non-WordPress conferences with great communities, just make it a point to visit one and it can potentially change a lot of viewpoints of how you develop.
Basically be a positive influence in whatever community you decide to be a part in. I don’t think you could ever get tired of promoting that. 😄