A look into the life of a Technical Evangelist

Single Clicking To Open A File In PHPStorm

Added on by MattW.

I have been using PHPStorm for a few weeks and really enjoy it. I came here after using SublimeText 2&3 for the last few years, plus vim when I need to do something quick. But one of the big annoyances for me has been the need to double-click to open a file. Yeah, it's kind of a silly thing to complain about, but I was very excited today to find the solution.

The fix is a strangely labelled option in the Project Files settings dropdown. Now I don't mean in the main settings area, but rather from the gear icon in the Project View. In that dropdown you will find two magic options: Autoscroll To Source and Autoscroll From Source.

Turn both of these on and now a single click on a file opens it on the editor and selecting any open file highlights it in the project file list. Sweet!!!

Using Codekit Hooks To Get Around A Libsass Issue

Added on by MattW.

Recently, I ran into a problem with libsass and loud comments. As some of you know I am working on building Wordpress themes. At its bare minimum, a theme has a stylesheet with a comment at the top and a functions php file. I am using SCSS for styles and libsass to compile it.

While libsass does almost everything the regular sass command does, there are some things that are missing. Loud comments are one of the things that are broken right now.

I happen to use Codekit as well. Codekit watches a directory and then does what it needs to do to result in nice clean code. If there is anything Codekit doesn't know about, you can run an extra command using a hook.

So I have Codekit take a style.scss file and compile it to style.css in the same subdirectory. Then I have a hook that watches for style.scss and runs the following shell script:

cat source/scss/template_about.scss source/style.css >style.css

This super simple script concatenates template_about.scss and style.css into a single new file. Note that the new file is in a new location. When I had it adding the text to the same file, Codekit looped forever.

The result of this is I get a SASS compile far faster than what the standard command provides and I automatically get a file that works for Wordpress. Woohoo!!!

What a Difference...Part 2

Added on by MattW.

Four months ago, I wrote a blog post describing the year up to September 2013. It was a whirlwind year for me. But the last 4 months since that date have been pretty amazing too.

The big change happened in November; Thanksgiving Day to be exact. Toni and I took the train down to New York City, used my points to stay at a great hotel near Grand Central, and wandered the city for 4 days.

On the first day, we trekked across town and found the Highline, something we had both wanted to see for years. While wandering along the beautiful above-ground park, we held each other tight for warmth on the freezing cold day. At one point we took a break and sat on some bleacher seats built into the path.

After a short rest, it was there that I took my next step. I asked the love of my life if she would marry me. She said yes.

Since then we have been planning our wedding and continuing to love every day we have together. Every day we learn more about each other and become happier and happier about our decision to spend the rest of our lives together.

Our "Save the Dates" went out a few days ago and I look forward to seeing some of you there as we both say I Do.

What a Difference a Year Makes

Added on by MattW.

I realize it's not New Years yet, but the last 365 days have been truly amazing. I had thought the previous year was good, but it pales in comparison. There were hard times and wonderful times and the net result is a change I am so excited about, I needed to share it with the world.

So it's actually a year and a couple of days now that I am writing this, but it was less than a year on Saturday...Lets get started.

One year ago at the beginning of September, 2012, I had been working for a Boston startup for a couple months and eager to move to the US. I was living in Amsterdam because I still didn't have a buyer for my apartment there. And in the first few days of September, I found that buyer and he signed his intent to do the deal. He had a few weeks to back out, but I was hoping for the best.

In October, he signed the final papers and I was no longer a resident of the Netherlands. The place was sold well under what I paid invested into the place, but it was done. A few days earlier the movers came and packed my stuff up for the trip across the Atlantic.

At the end of October my stuff had arrived in Boston and waited for customs to sign it through...unfortunately a hurricane stopped by at the same time. Thankfully my stuff at the Port survived, as did everything else in Boston.

By November I was moved in and getting started with being a Bostonite. Things were pretty good. I wasn't ecstatic about my job and I could see my boss wasn't ecstatic about me, but I wasn't sharing that fact with others. I had taken a big loss to get here and wanted to do everything to make it work. At the same time I started acting on the decision to get out there more. My parents helped me with the move and I knew the one thing they would want was to see me not alone.

December rolled in and that means going to San Antonio for Christmas and New Years. I couldn't take the amount of vacation I had become accustomed to now that I am back in the US, but I had a good time with family nonetheless. Unfortunately, the most wonderful person I had found online and exchanged a few emails with went dark.

That perfect woman came back online in January but I spent much of the month doing a lot of sniffing and sneezing. Ugh, sick. Not too sick to work, but sick enough to hold off on meeting this woman. To make things a bit worse I am seeing that most of the content I am creating at work is never allowed to see the light of day. Frustrating to say the least.

February started really well because the mystery woman wanted to meet. I was still getting off the cold. And I knew within a few weeks I was going to be jobless. Then on the weekend we decided to meet up, the biggest snowstorm in decades decides to visit Boston. Slam! Over 3 feet of snow in one day and the city stopped. Things are not looking good.

Then we met. February 10, 2013. A cold day. A quiet day. Transit was stopped but we both slogged our way to Boston Common. On the steps of the State House, Toni and I said hello and then we walked. And we walked. And we talked and walked. And walked and talked. I think we ended up going 6 or 7 miles. Seriously! Through the Common and the Public Garden for a few laps, down to the Fens, through and round past the MfA, had a bite to eat at Sweet Cheeks, and then walked a little bit more. Things are looking up.

March comes along and one month into this budding relationship we do another massive walk. 12 miles around JP. We loved it. And then she tests me: swing dancing. If you know me, you know dancing is not something I would ever choose...but I do it...and I pass the test. Whew!

With the beginning of March also comes my enrollment in the Startup Institute Boston. I would spend the next 8 weeks getting indoctinated into the tech startup scene here in Boston. I was a newcomer to this market, so having this guided tour would help immensely. A few weeks in and I tell Toni about my situation. I realized this relationship was turning into something significant and stopped the interview process in San Francisco and Seattle. She didn't run away. We got closer.

April includes a weekend in Vermont and things progress both romantically and in SIB. I am already realizing that I am in the best time of my life. I also hear Matt Barba talk to the SIB group about starting Placester. We have a conversation afterwards. And another. And another.

April of course wasn't all good. April was also the month of the Boston Marathon. Which is when the bombs went off. April was the month of the massive police action tracking down the suspects of the bombing. April was the month I realized I was scared that Toni might not be alright and I wanted to desperately spend every day with her.

April was the month SIB ended for us. We did our expose and graduated. And a few days before SIB ended for us, I had my offer from Placester: Developer Evangelist. Exactly the title I wanted, and I had a strong feeling that this time I would be allowed to actually do what the role implied.

May was a big month...but then every month since February has been big. We are getting serious about moving in together. We are getting serious about each other. I fly with Toni to Detroit to meet her family. I had no idea families could include so many people. I am almost convinced they hired a few extras to try to scare me, but of course they all love me.

June means I am over a month into my role at Placester. This is amazing. This is a company that respects what I do, values my input, allows me to speak and work with the CEO and the other execs. This is very different from my previous startup experience. I do great things and they are made public. I love my job and I love Toni. The two most important parts of my life are aligned and everything is good.

July...it all continues. Placester continues to be awesome. My role at the company is valued. Toni and I are spending every moment of every day together. She even comes with me to Seattle to meet my parents and my friends and everyone loves her.

August is the month that brings us to a full year. August was the month that made me realize how much had changed. August was the month I felt at peace with so much in my life and the month I move in with Toni.

Our lives have intertwined. Our stuff sits next to each other. We have a very comfortable home in Charlestown and are looking forward to our lives together. And yet we are cherishing every day.

I had an epiphany a few days ago. Much of my life I have regretted the silly decisions I have made: not paying attention in school, procrastinating here and there. Today that regret is all gone. Every decision I made, every delay I had, every step I took brought me an inch closer to Toni and that fateful day on the State House steps.

All regret is gone. What a difference a year makes.

I, Sublime - A Look at My Favorite Sublime Text Plugins

Added on by MattW.

I have been using Sublime Text 2 since pretty close to the beginning. I purchased it early because I could see the value easily and prefer to support the developers who support my efforts.

One of the aspects of Sublime that I love the most are the plugins. But when you get started with Sublime Text 2, it can be difficult to know which plugins to use. This article will go through the ones I think you need to install first.

  • Sublime Package Control - Will Bond’s Package Control is the first thing everyone needs to install. Installing packages without this is a PITA. Even if you only install one other plugin, this is totally worth it! Install it now using the instructions found here.
  • Advanced New File - Easily create new files from the root of your project rather than from the default directory for the app.
  • Alternative Autocompletion - Install this then press escape to cycle through the various autocomplete possibilities.
  • Bracket Highlighter - Quickly seeing the other side of the set of brackets is very useful
  • Emmet - This used to be called ZenCoding. Not sure why it changed, but Zen was breaking down for me and Emmet makes everything better. If you are writing ANY html, install this and get it done quicker!
  • ERB Insert and Toggle Commands - If you are doing any Rails dev, then you are writing ERB files. If you are writing ERB files, you have to keep typing <% %>. Everytime I do that, my finger searches for the % key. Now I press a simple shortcut and cycle between <% %>, <%= %>. <%- %>
  • ERB Snippets - More ERB goodness. Some overlap with the Insert/Toggle plugin, but thats still easier for me.
  • Find Key Conflicts - As soon as you install a few plugins, there will be key conflicts. This helps you find them and more importantly, fix them.
  • GitGutter - I don’t really use the Git plugin since going from the command line is easier when you get used to it, but seeing what lines changed in the gutter is way cool!
  • LiveReload - Save a file and see your browser auto-refresh. When doing Rails, this seems to work better for me than CodeKit, though I still use that occasionally for regular web dev. Follow the instructions here if it crashes on save every now and then.
  • Sidebar Enhancements - This makes the sidebar infinitely more usable!
  • Synced Sidebar - I am fairly new to Rails so still getting a feel for where files are. I tend to open files pressing Command-P then type the file name. When I do, this plugin shows me where in the sidebar the file came from.

If you are doing anything with Rails, I suggest you also look at MHartl’s SublimeText Setup Instructions for some good pointers. I took the RailsCasts Theme from this online theme editor and made the keywords, constants, and library functions a bit lighter because I couldn’t see that shade of red very well.

Do you have any favorite plugins I should be using? Share them in the comments, or send me a tweet @technovangelist