Image courtesy

PowerShell ISE – Add a GUI to Powershell

First of all, Happy Halloween! I hope those of you out gathering tricks and/or treats have a safe, fun time! I was going to do a whole post on something Halloween related, but decided to settle for a “spooky” image, a “Happy Halloween”, and a topic I’m very excited about instead.

OK, really I just couldn’t think of anything that hadn’t already been done to death (no Halloween pun intended).

That said, earlier this month I took a week-long course on Troubleshooting and Maintaining Windows 8.1 (MS-20688, if you’re interested). The class was a lot of fun and while I didn’t discover much that was unique to Windows 8.1 I did learn a few tricks I had yet to learn in almost 15 years of professional IT work. One of those tricks was a little tool called PowerShell ISE.

Anyone who does any kind of heavy lifting in Windows has probably at least heard of Windows PowerShell. For those of you who haven’t,  think of it as a pumped up Windows Command Prompt. You can do some pretty amazing stuff in PowerShell. In fact, I could probably write several posts on all the neat things you can do with it and still not cover everything. That said, this post is about PowerShell ISE which adds a GUI layer over PowerShell.

The best way I can think to describe PowerShell ISE is that it is kind of like a simple IDE for PowerShell. At the top of the window is a text editor where you can enter or load a script or list of commands. The editor is smart enough to attempt to auto-complete the command you are trying to add. Once it displays the command you want you can either double-click on it or hit ENTER to add it to your list.  At the bottom of the window is a typical PowerShell prompt. You can either enter commands into it directly or run command from your list with either the “Run” button or the “Run Selected” button. The “Run” button will run everything in your script pane while the “Run Selected” button will just run the commands you have highlighted.

At this point I’ve barely scratched the surface on PowerShell (let alone PowerShell ISE), but already I can see the power of these tools even with my limited knowledge of what they can do. If you do any kind of windows administration and haven’t taken advantage of this tool I highly recommend you look into it. My only regret is that I didn’t look into it sooner.

So what about you? Are you a PowerShell guru or are you just learning about it? I’d love to hear your experiences in the comments!


Image courtesy of

WinSCP: FTP and SSH in One Client

A couple of years ago I was replacing old workstations for some developers. I noticed a lot of theme were using an application called WinSCP. Being the curious sort I checked it out and found a fabulous tool that I decided is well worth sharing.

WinSCP  (Windows Secure CoPy) started out as a pet project by its developer and eventually blossomed into the open source application it is today. It basically creates an interface for Secure FTP (SFTP) in Windows but it also goes the extra step of integrating SSH functionality as well. You can use the native client or link your PuTTY client into the application to use your shell account. One of the nicest features is that you can save your login information in WinSCP so you can connect with the click of a button.

For me the biggest advantage of using WinSCP is that I can keep it open and when I have whole files to upload it’s right there, but if I need to make a simple tweak somewhere I can just pop open PuTTY and use VIM or EMACS to edit the file directly on the server.

Do you use WinSCP or something like it? Tell me what you think in the comments!

Color Palettes Made Easy With Adobe Kuler

Finding colors for your web site’s color palette is tricky. Finding colors that work well together but present enough contrast to keep your content legible is tough. A great tool to help with this is Adobe Kuler.

Kuler is a great tool because it allows you to set a base color on a color wheel then select the color rule you’re looking for. Want an analogous color palette? No problem, Kuler will automatically select analogous colors based off your initial color choice.  There are a half-dozen rules available to apply and if none of them work for you there’s also a “custom” option that allows you to create your own palette without applying any rules.

Perhaps my favorite feature of Kuler is the ability to create a palette based off of an image. Just click the camera icon on the upper right corner of the page, select your image, and let Kuler do the rest. This is really handy if you have an image like a logo or word-mark and you want to build a color palette around it and as if that wasn’t cool enough, Adobe also has a Kuler app for iOS devices (Sorry, no Android app as of yet) which allows you to snap a photo with your camera and use that image to create your palette.

Adobe Kuler is an indispensable tool for creating color palettes in my web pages. I don’t always follow the rules it sets, but view them as a guideline to start with before venturing off on my own. I suggest checking it out for yourself. I think you’ll love it as much as I do.

Do you use Kuler or some other similar service to create color palettes for the web? If so I’d love to hear your thoughts in the comments.


Learning Ruby? Here’s Some Code to Play With

As I announced a couple of weeks ago, I am making the code for my Web Applications Architecture class available for use in your own projects. The code is a very basic blog but should serve as a nice starting platform to build on.  I’m releasing it under the terms of the GNU Public License ( and you’re free to use and/or change the code however you wish. No attribution required, although if you do something really cool with it I’d love to hear about it. I only ask that you don’t mess with the main fork of the repository… I’d like to keep the base code pristine so everyone can play with it.

To check it out go to

Have fun! Share Your Code… or not

Developing software is generally a team effort. The challenge is how to allow multiple developers access to the same files without having them step all over each other.  Version control systems address that exact issue. Using a system like Git or Mercurial allows an individual developer to “check out” a file and work on it without having to worry about someone else coming along and overwriting their changes.

Version control systems work by creating a central repository for all files in a given project. Typically an organization has one or more repositories set up on a server somewhere within the organization. But what if the software is an open source project worked on by thousands of people world-wide? Wouldn’t it be nice to have a repository that is accessible from the World Wide Web?

That’s where comes in.

When you create a BitBucket account you can then create repositories that you can use remotely via Git or Mercurial. You have the power to make the repository public or private so you can control who has access to your project. This is a good way to allow collaboration on open source projects and BitBucket makes it simple to connect and clone your remote repository by providing you with all Git commands needed to make it work. All you need is a basic understanding of Git to get yourself up and running.

I’d never used a version control system before. I’m generally an independent developer. I don’t work in a team environment, so all of my code is my own. Now that I’ve used it I’m finding out just how valuable it is. If I make a mistake I can simply roll back to an earlier version of my code and start over.

Overall, BitBucket is a great service. It is relatively simple to use and provides a nice interface. While not as popular as Github, they do a great job and I, for one, am happy with the service.

Do you use BitBucket, Github, or another similar service? I’d love to hear your thoughts in the comments.

MySQL Workbench: Design and Administer your MySQL Database

If you have a MySQL database, there’s a good chance you’ll want to administer it. You could use something like phpMyAdmin and for most users that would good enough, but if you’d like something a tad more robust I’d like to tell you about MySQL Workbench.

MySQL Workbench is a standalone application you can install on your workstation. Much like phpMyAdmin, it allows you to administer your databases but it does so much more than just that. MySQL workbench has the tools you’ll need to design, develop, and support your MySQL database. You can create ER models, then create relational databases based on those models. You can run SQL code against the database directly, or upload scripts to run it for you. You can browse through the database and peek into the contents of your tables all from one place.

I found MySQL Workbench a bit tricky to set up. Getting it to connect to my database took a bit of time and effort. The chief issue had to do with the way I had my home network configured, but once I figured it out I discovered the workbench really offered a lot of really nice features.

In the end, MySQL Workbench is a great tool for database administration and if you’re doing a lot of MySQL development I highly recommend it. However, if you’re just looking to do basic functions like adding users and modifying permissions to your database you may consider something simpler like phpMyAdmin.

Do you work with MySQL? If so, what is your preferred tool for administering your databases? Let me know in the comments!


“Shellshock” Bash Exploit a Big Deal, Here’s Why

You might have seen a lot of information in the news about the “Shellshock” Bash exploit that recently came to light. What may not be clear is why it’s such a big deal. You’re probably used to seeing information about exploits and bugs on Windows-based systems, but it’s relatively rare for issues of this size to pop up on Unix based systems. That’s one reason this is such big news, but the other reason is the sheer scope of the risk. Continue reading

JSFiddle: Test and Tweak your Scripts Instantly

One of my favorite places on the web is Its simple interface allows you to create and test your jQuery and JavaScript quickly and easily. All you have to do is create some basic HTML, style it, create your script and when you click “Run” you’ll see your results all in the same window. If you don’t like the results you can tweak things and click “Run” again to see how your changes impact the results.

If you’re just learning jQuery or JavaScript, JSFiddle is a great way to play with the language and get instant results. If you create an account you can save your “Fiddles” and share them with others. One drawback I’ve found is there is no obvious way to make your fiddles private, if you save a fiddle it will be publicly available on your profile. Other than that I have no complaints, and it really isn’t a very large complaint because I actually don’t mind sharing.

Do you use JSFiddle or know of another great service similar to it? I’d love to hear about it in the comments!


Announcement: Learn Ruby on Rails with my Basic Blog

I recently took a course on Web Application Architecture offered by the University of New Mexico via Part of the course was to develop a very basic blog application using Ruby on Rails. The course just finished and is still in the grading process, but once it is fully completed I intend to make the source code for my blog application available for you to use free of charge under the GNU Public License (GPL).  I expect the course to have completely finished and graded by tomorrow so I’ll have it available and will give a link to the source code in a future post.

Please note this is not a part of my SimpleCMS project, and is very basic in function. It does little more than allow one to add posts and comments. That said, I think it will serve as an excellent base for anyone who wants to play around with Rails.

XAMPP: Maximum Productivity, Minimal Setup

When I started playing with WordPress I installed separate copies of Apache, PHP, and MySQL on my workstation. It wasn’t horrible, but configuring them so they worked harmoniously was a pain. I learned early on of a wonderful project called XAMPP which combines Apache, MySQL, PHP, and Perl in a single installation.

The great thing about XAMPP is that it works straight out of the box. Once you install it you can start using it right away, it’s already configured so the various components work together. If you need to further configure it the administrative panel makes it very easy to open and edit the various configuration files. You can even set things to run as a service so they’ll automatically start when you start the computer.

XAMPP is a development environment, so use caution using it in production. It comes with a minimal security set up, which is fine for development but dangerous in production. If you want to use it in a production environment you’ll need to harden it first.

Overall I really like XAMPP. It makes life a lot easier and I can spend more time coding and less time configuring my environment.

What do you think? Do you use XAMPP or something similar? Let me know in the comments!

Design, Develop, Inspire!