One of the many interesting benefits I get working for Big Nerd Ranch is the opportunity to participate in many fun and unique events. One of the bigger ones is called Clash of the Coders.

Clash of the Coders is an annual coding competition, whereby Big Nerd Ranch effectively “shuts down” for a a few days to allow developers to flex their coding muscles in to build something (anything) that is both wizardly and useful.

This years edition of “Clash” starts at 6pm tonight, Wednesday March 30th. While people are encouraged to brainstorm ideas and form teams ahead of time, no code shall be written until the event starts.

During the event we are treated to full time catering, shoulder and neck massages as well as other free-form geek activities. (I hear Christian will have his new Oculus Rift around for testing.)

While remote nerds can choose to stay remote and participate, anyone who wants to come into the office can. Last year I was at home and didn’t really get into it. This year I’m working out of the office so I’m anxious to see how it all works out.

As for my project and team, I’m still working on it. I have an idea and if need be will work on it solo but am also hosting a meeting after lunch for ‘Clash Singles’ to see if we can form some last minute teams.

At the end of Clash (Saturday, 6pm) we have a nice BBQ dinner (spouses and kids welcome) and we run a science fair of sorts, where people demo their work and answer questions. People are judged on project complexity, presentation and other factors. Bonus points are awarded if your team was interdisciplinary (mixing people of different departments) and if you were able to integrate any of the emerging technologies on our watch list. Top prize allows you to choose from list of high end geeky toys (think drones and musical instruments) with second/third prizes getting some nice Amazon gift cards.

I’ll post more as Clash gets going. If you have any questions let me know.

Local company Wildbit has been nice enough to host a running series of meetup events focused on running a software business and all that it can entail. Last night we discussed Managing Remote Teams and as a remote employee myself I was interested to hear what others people had to share. Below are some of my notes.

Context

In attendance we had about 12 or so people. Many from Wildbit (many of their remote people were in town), but we also had a pair from another small (6+) local software company, one from a local company researching coworking and myself, whom works remotely for the Big Nerd Ranch, down in Atlanta.

General Observations

Running an all in-person office has unique organization challenges and benefits.

Running an all remote office has unique organization challenges and benefits.

Running a hybrid in-person and remote office has unique organization challenges and benefits.

Even still, things vary based on the size and work of your company.

No rules are true for everyone so be flexible.

Be prepared to spend time and energy on this.

Why Consider Remote Employees

Expands your potential hiring pool greatly.

Very helpful if you are using niche technologies where it can be hard to find experts (Closure, Rust, etc.).

Potential benefits in having time shifted work (but this can also introduce communication problems, lag).

How to Get Started

If you currently have a 100% in-person company, adding remote people will be a significant culture shift. Be prepared.

No one wants to be the first remote hire on a team.

Consider adding multiple remotes at once.

Consider offering work from home to current in-person staff to help the new culture work itself out.

Challenges

It can be hard for a remote employee to demonstrate what they are working on.

Being remote requires more thorough and regular communication than most people expect.

Lots of people romanticize remote work from DHH’s writings and don’t respect the real life challenges of it all.

Sometimes with a hybrid company, teams will be setup where you have two people “in office” and one person remote on a project. It can be real easy for the two people in office to share more face-to-face leaving the remote person feel left out.

If you have employees in different states / countries, you have to make sure you are following the approbate employment laws of those states / countries.

The whole “programming in your underwear” trope is really misguided. Most successful remote people have a schedule, take showers, get properly dressed and have a dedicated work spaces.

Face to Face Retreats

Everyone seemed to agree that it’s a bad idea for the remotes to never come together. Everyone benefits from real face to face time so plan for it early.

Wildbit has yearly company retreats, where they work, plan for the year ahead and otherwise define the goals and values that should guide all their decisions.

Other companies do more vacation oriented retreats to help connect people socially.

It was also suggested that depending on the size of the company it could benefit from have some company wide events and then some smaller more team focused events.

Things You Can Do to Help Remote Employees

Setup a Slack or HipChat for communication.

Additionally try to have people communicate what they are doing. “Starting feature X”, Reviewing PR Y”, “Stepping out to get some coffee”, “Breaking for an hour to watch a conference talk” — sharing these can help people better understand what’s going on.

Consider giving them an annual office stipend to improve their workspace; equivalent to the money you’d spend giving them an office in your building.

Make sure all in-office systems are available to remote folks. Things like file servers, whitelisted IP API access, etc.

When running a video chat, consider having even the in-office people stay at their desk and connect to give every “virtual head” its own space. (I’ve also had everyone use their laptop for the video and a shared phone for the voice.

If you are presenting and the video is going out to remote people, don’t forget to ask them for questions and check the chat room.

If you are a manager and are set up to have 1:1 monthly meetings with in-office people, consider offering bi-weekly for remotes — since they might be more out of sync.

Equipment

Some people were enjoying the HighFive video conferencing hardware — though they needed more seats than the current solution offers for their company wide stuff.

BNR’s recently been using the YouTube Live service to stream and capture video with fair success for our larger meetings / internal educational talks.

One AV tool BNR uses is a toss-able chat box that contains a microphone so after large meetings, during Q and A, the remote folks can hear the questions being asked.

The Double was brought up reguarding its use as a virtual presence. It’s cool stuff but of questionable return value.

Hope you enjoyed my notes. If you have anything to share about your own remote work let me know.

Being the lead organizer of the Philly chapter of CocoaHeads, I always welcome the opportunity to chat with members of other meetups. It’s great to compare notes on how we run our groups, what’s worked and what’s failed. In particular I’ve recently chatted with the leadership of the Nashville CocoaHeads and was also able to attend an Atlanta CocoaHeads meeting while visiting Big Nerd Ranch. It was a great experience and has me inspired to capture some of my thoughts here on the blog. This first article is a walk down memory lane to document the history of Philly CocoaHeads.

Getting Started

The Philly chapter of CocoaHeads started out of IndyHall in 2008. IndyHall is a coworking space, a place for people who can work from home but choose not to; perhaps because they want a work/home separation or just to participate in the greater creative community. Back then IndyHall was still fairly young but had attracted together a strong tech following including:

Andy Mroczkowski and Far McKon who were working for the local company Neat, and their Mac software / scanner combo.

Jason Allum who was working on RipIt (which would later be sold to The Little App Factory).

Dave Martorana who had a few apps, including MultiFirefox and Multiplex (a media server app ahead of its time).

Joah Aas, who worked for the Mozilla organization and is now most known for his help with the Let’s Encrypt project.

Randy Zauhar, a local professor teaching Bioinformatics and Chemistry at University of Sciences. Randy had previous help run and host a group called: PHAD, Philadelphia Apple Developers.

And myself. I was a basic IndyHall member and was working on ProfitTrain updates at the time.

Philadelphia Apple Developers (PHAD) never grew to be anything very large but I remember it fondly. It would usually be about 4-6 of us sharing a pizza and showing each other our Cocoa projects. I vividly remember Randy showing off his spreadsheet app which listed chemical equations on one side and then had an OpenGL cell rendering the compositions on the other. I also remember doing talks on Subversion and then Core Data. Again, they were small meetings but having even a few people who were interested in or working in Cocoa back then to bounce ideas off was a huge win.

The early meetings of our group were ran by Andy Mroczkowski and actually marketed under the name PhillyCocoa and not CocoaHeads. The meetings were very demo heavy with lots of roundtable questions and discussions filling in the cracks. Some members took to working on a side project, a calculator, outside of the meeting. The project didn’t get too far but the remanence of it have been preserved on GitHub.

This is a photo of IndyHall, Strawberry Street Edition. The first “CocoaHeads” meeting was held in that back meeting hut.

As the iOS SDK (or iPhone SDK as it was called back then) was announced there was a serge in new members and interest in the group. The biggest hurdle seemed to be Objective-C itself so we planned and ran a workshop.

New Leadership

Meetings continued, now at IndyHall’s new home on 3rd Street (or N3RD Street as it would come to be known as). Eventually a December meeting was announced and Andy let it be know that if you were interested in the future of PhillyCocoa to attend. At the meeting Andy announced his upcoming departure to head to San Fransisco to be apart of a startup. Two volunteers came forward to help organize the group in his stead, myself and Mike Deaven.

Meeting Format Changes

Over the next year me and Mike enacted a handful of changes we’d hope improve the group.

One immediate change we did was move the website to WordPress. Previously Andy had a custom Ruby CMS / publish thing going and it wasn’t easily portable. I was able to get all of the old post converted into WordPress. The main goal here being enable multiple people to post and not have the code be machine dependent.

Another change was subtle, but I started to embrace the CocoaHeads brand in our naming and introductions. I always was aware of them and to me it seemed helpful to take the name and have our chapter listed on the main global site.

We also started to fiddle with the meeting format itself. Moving the pizza / social time to the front end of the meeting. This helped since we usually had a lot of stragglers arrive between 6:30 and 7:00, so by having the pizza upfront we could make sure to start the meeting with everyone present.

I also started to be a little more rigid in the introductions, making sure to repeat the basics of the group, who we were, what we did, when we met. I wanted new people to quickly get a sense of expectations.

The hardest thing back then was getting people to do talks. There were many meetings in the early days where we did not have a formal speaker and so it was on my shoulders to build a presentation to keep the group entertained. It was a lot of work but I think a major reason why we were later became more successful. I think it’s incredibly important to be consistent, to have that meeting every 2nd Thursday no matter what. Setting up that pattern and not giving into canceling meetings really helped solidify the group.

To help spur talks we started to request smaller commitments, show and tell time. A short talk or demo usually 5-15m in length. Much less to prepare and much less anxiety. It started slow but eventually kicked off a pattern of people coming forward to do talks, even “main” talks.

Adding Members through Meetup.com

Up to this point Philly CocoaHeads did not promote itself too much. You heard about it through word of mouth or via IndyHall announcements. Looking to grow the community we decided to join Meetup.com for more exposure. It took a few months to get going but eventually started to bring in tons of new faces. Meetings quickly grew from about 10-12 people, closer to 20-25.

As of today we have about 870 registered members on Meetup.com. Now most of them are not active members. I’d guess if you defined “active” as participated in a group event sometime in the last 12 months, you’d probably end up with ~200 members.

New Events and Expanding the Leadership

When iOS 7 was announced we decided to do a special hack day to celebrate. We sold tickets to help buy a nice catered lunch and gathered at IndyHall on Saturday to hack on new iOS 7 APIs. The event was a huge success.

One newer member wanted to help do this more often and so Tom Piarulli joined the leadership to help run what has now become known as Side Project Saturday. SPS is typically the last Saturday of the month, starting at 10am and running until about 5pm. People come and go, work on their side projects, ask questions and otherwise socialize with their fellow geeks.

At around the same time the leadership also welcomed Kotaro Fujita to help run our website and Twitter account.

Moving to the Apple Store

We are fortunate enough to have a very nice Apple Store here in Philadelphia. Sometime in 2013 I was approached by the business relations manager from the store. He came to a few meetings and introduced himself. He was really impressed with our group and offered to help us out and possibly host the meeting.

I was kind of torn. We had our start at IndyHall and while we were definitely starting to outgrow the space I didn’t want to leave. Me and Kotaro took a trip to the Apple Store to checkout the Briefing Room. The room is incredibly nice. It’s on the second floor of the store, not open to the public. It’s kind of a VIP area for larger demos and meetings. It had 5 mounted TVs, all wired up for AirPlay and sound. A huge wood table with 16 swivel chairs but plenty of space around the edges for fold up chairs. Fully laid out we could host 40-45 people and have a great AV setup to help support the speakers.

We made the move in November 2013 and it’s worked out great. The space is extremely accommodating and many of the members certainly enjoy the prestige of getting to meet in such a private venue.

Workshops, Suburb Side Project Saturdays, and CocoaLove

In 2014, Curtis Herbert who had already been very active in the community as well as doing some talks for us joined the leadership team and started multiple new projects.

Firstly was CocoaLove, which started out best as I can recall as friendly outburst during my “Industry News” section while reviewing upcoming conferences. “Why don’t we have any conferences here in Philly?” — and so it began. CocoaLove is not an official child of CocoaHeads but we obviously share a lot of the same goals.

Curtis also helped spur new educational events we came to call Workshops. Typically one day, 5 hour events with paid for tickets (most money going to the speaker to help compensate them for prep time). We ran about six or so over the last year and a half, covering introductions to Objective-C and then later Swift, App Marketing, UX design, and more. Workshops are incredibly loved by our members and sell out quickly. The hardest part about running them is the custom content creation. We have some ideas on how to improve that moving forward and hope to offer more Workshops in the year ahead so stay tuned.

And finally we have our “Suburb” edition of Side Project Saturday. The city of Philadelphia is very flat and wide, with an extended suburban layout. We have many members who live outside the city and can not always participate with our center city events. To help, we started running a “Suburb” edition of our Side Project Saturday event. These are held at the Apple Store in King of Prussia. We’ve been able to host a few and hope to do more. Again, Curtis has been very helpful in organizing this.

Videos

In 2015 we continued to evolve and expand what we offer, this time with recordings. We’ve been talking about recordings for awhile but in 2015 things started to fall into place. I’ll go into detail as to how we record in a future blog post, but put simply it’s capturing what video we pipe to the monitors and then using a lapel microphone for the speaker to capture their voice. After the meeting we match the two together and then publish to Vimeo. During the fall we also added a custom AppleTV app which streams the content as well (search for “CocoaHeads” and you’ll find it).

Book Club

Another new endeavor for 2015 was the Book Club. We started it over the summer reading through Cocoa Programming for Mac OS X and then restarted it this winter with HackingWithSwift.com. Book Club basically has members work through chapters and then meet online to discuss how it went. Over the summer we met every other week, while the winter edition has been more aggressive doing it every Monday. A big thanks to Michael Mayer for helping to run the latest Book Club season.

The Future

So it’s 2016 and things continue to look good. I’d say the biggest problem we have is that we occasionally max out of room occupancy at the Apple Store but not enough to really justify a new venue. We also recognize our website could use a lot of work to meet our high standards but it remains a fairly low priority overall.

As the main organizer I’m extremely lucky to have such great support from the members and the rest of the leadership. There is no way we could do this much work if it wasn’t for the many volunteers we have. I’m extremely proud of the community we’ve made and continue to run.

Recommendations

To those running similar meet ups a few closing recommendations:

Be consistent with meeting dates and locations.

Be willing to do a lot of personal presentations and/or MC of roundtables when other speakers are not available in the early days.

Don’t be afraid to shake people down for talks. Also remember it’s much easier to get them to sign up for a talk a few months from now than in a few weeks. Take advantage of that.

If meeting after work try to have some food and drink available. We do pizza cause it’s relatively cheap and easy. You want to feed them but remember they aren’t coming for the food. In the early days a donation jar can usually cover most of the costs, later you might need sponsorship. I’ll have more to say on that in the future.

Help spread the responsibilities. Even smaller things like handing the food, taking meeting notes or running the group Twitter helps turn “the group” into “our group”.

I’m working on some other posts to recount the history of our CocoaHeads chapter. While brainstorming for it I couldn’t help but start to capture my own history and how I came to work on the Mac so I figured I’d write it up and share.

The following post has a lot of “Way Back Machine” links to see sites as they used to be, a fun trip down memory lane.

I didn’t start learning computer stuff until high school (1995) and even then it was on a 286 using DOS for BASIC and PASCAL. Starting college (1997) I finally got to buy a computer of my own, it was a Windows machine but I didn’t really mind at the time. After my first year of college I got to take my co-op experience. Through it I ended up doing web design for a small company just outside Philly. I got to work with a former Apple employee and he was quick to saturate me in the ways of the Mac. Overall I was impressed and by the end of the co-op was considering a Mac of my own. Now being in college and just having bought a Windows computer I wasn’t in a financial position to change, but the seeds were planted.

By 2000 I was doing web design part time for Seybold, using a Mac at work and Windows at home. I was getting into the server side of web development, learning about UNIX, Apache, MySQL and the like. Around this time Mac OS X was announced. The idea of running Photoshop next to Apache pretty much sold me and I knew right then I wanted to participate on this platform.

With the 2001 Macworld Keynote came the release of the Titanium PowerBook G4. I got the high end 500 MHz model. I split the cost across two credit cards and some cash. I couldn’t afford this machine but I had to have it. It was the first personal Mac I ever owned.

Initially I ran Mac OS 9 on my TiBook, but on Saturday March 24, 2001 I drove out into the rain to my local UPS warehouse to pick up the copy of Mac OS X I had ordered (No way I was going to wait until Monday for delivery!). I came home, installed it and never went back.

Well, technically I did go back to OS 9 on occasion. Some apps like Final Cut Pro (which I was using for my film class) didn’t work in the Classic environment at all and other apps, well, just worked better booted into 9. That said, I really enjoyed working in OS X. Despite all of its performance issues and bugs I was too busy enjoying all the new stuff: the new UI and the new APIs (my first time programming for a native window UI).

I’m now also now looking to connect with other Mac users. I eventually come to join MacBUS a local Mac User Group focused on the business side of the Mac. I also visit other groups in the area from time to time such as the Main Line Mac User Group’s Programming Special Interest Group. A fun group but there was little coverage of Cocoa, it was mostly scripting languages like AppleScript and PHP.

It was however through these groups and connections I met Randy Zauhar, a professor at the University of the Science. He and some of his students were working in Cocoa and wanted to start a regular meetup. We called it PHAD, Philadelphia Apple Developers.

And that’s it for now. I’ll recount more of PHAD and how it eventually lead into Philly CocoaHeads in my next post.

Just Do It! and more specifically, don’t let your high taste of quality hold you hostage from creating and shipping. Get it out into the world and improve it over time.

Even before the talk, I was already inspired by Jaimee’s “31 days” series of writings and video posts. I’ve been wanting to get more writing practice and have been kicking the can on starting my own series but no more!

Today begins 31 Days, 31 Products — a blog series where once a day for 31 days I’ll post a short story sharing some of the products and services I’ve come to enjoy using. I hope you like it and discover a new helpful tool along the way.

It’s been a little over two years since I put Clickable Bliss, the company name for my personal projects, then self-employment, on hiatus after taking a job at DmgCtrl (which then turned into a job at Big Nerd Ranch). Back then when I wrote about the change, I mentioned that team work was something I was really missing after my group startup Shindig ended. The good news is, in the last 2 years time I’ve gotten to work with some very talented people and have learned a ton from them. The sad news is, the yearning to work on something longterm, something of my own, something I can have a meaningful impact on does not go away. Today I’d like to share my intent to reboot my professional side projects.

I say “professional” side projects because I do want these to be serious projects that result in profitable products. I want to create software that people enjoy using, solve meaningful problems and people are willing to pay for. I’m not looking to quit my job but I don’t want that to be an excuse for lack of progression or service level, I want to make sure my customers are taken care of.

So what’s next? Well right now I’m working on breaking down some project ideas and otherwise trying to get up to speed with some tech stacks I’m considering using. I’m also trying to figure out the legal and branding side of things. Some questions on my mind:

Do I continue to do work under the name Clickable Bliss (which is a D.B.A.) or do I come up with a new company name that helps distinguish this new era and long term team intent (I do hope to bring on help for these new projects sooner than later).

If I do a new company name, do I run it as an LLC?

Do I promote these products under the company brand or just build brands around the project(s) themselves. (The two leading ideas I’d like to work on have fairly divergent audiences although longterm I’d say my interest is in providing tools for people who embrace technology to create things.)

I want to start to build up a newsletter as soon as I have some more concrete things to share. How do I migrate those people from the old Clickable Bliss mailing list? Should I?

So that’s what’s going on. Will share more when I have it. If you have any feedback or comments, please shoot me an email!

I’ve always been a big fan of the iPad. I’ve owned an: iPad 1, iPad 2 (which I sold to upgrade to an iPad 3), an iPad mini (retina), and now an iPad Pro.

I’ve been pretty antsy for an iPad Pro since I saw the original announcement. I can’t say I have any unquie plans for it (outside reading Big Nerd Ranch book drafts in PDF format on a much bigger screen). Mostly I just want to experiment with the all the new features like the pencil and multitasking.

As of right now I have the iPad Pro itself (I went with the high end, 128 GB with cellular) and the keyboard cover. The pencil has been a little harder to come by so until then I’m making due with the 53 Pencil I bought a while ago but never really got into due to the smallness of the iPad mini. So far, it plus the larger screen is working out well. I look forward to comparing this to Apple’s version.

There are lots of great iPad Pro reviews out there so I won’t go into major detail. The things I’m liking a lot: the huge screen, the sound system and the battery life. The things that got me down a bit: the removal of the split keyboard (it’s hard to type holding the iPad Pro in portrait mode), lack of 3D Touch and the lack of the newer thumbprint scanner.

All that said, when it comes down to it, it’s about the software. I think I’ve spent $100 in new software playing around with things. If you know of some must have iPad software let me know cause I want to see how hard I can push this thing. Tomorrow should be a great test as I fly down to Atlanta to visit the home office of Big Nerd Ranch.

For me when I quit my full time job with ASMP to focus on my Mac development work the song was Maggie’s Farm, Bob Dylan. I was really into Dylan at the time and the lyrics just fit. I remember blasting it from my office and hearing it play throughout the apartment those first few indy days working at home.

I’d love to hear what songs match up to your own big indy life moments. Shoot me an email or tweet me your story.

Hello internets. So sorry for the summer hiatus here on the blog. So what have you been up to? (Email me and say hi!)

I’ve been doing good. WWDC was a fun time in June and shortly after that I had 6 days down the shore with my family. At work, I’ve been on a Swift iOS project. It’s my first time using Swift in production and working along side John and Zac has been incredibly educational. I also was able to get on the road and do my first solo teaching gig for Big Nerd Ranch. I really do enjoy teaching and hope to get the opportunity to do more of it in the coming year.

In my off time I’ve been zoning out with video games, movies and the like. I bought a PS4 and have been mixing it in amongst my WoW and FF14 time. I do feel guilty as I keep meaning to start some productive side projects but I struggle to focus on programming after working a full day doing programming. We’ll see how the fall works out. Hoping to get some project inspiration from CocoaLove and Release Notes in October.

I also just (like a week ago) got a new car. Ended up buying a new 2015 Hyundai Sonata Sport. It replaces my old 98 Ford Taurus workhorse. The Sonata is nice; very spacious and a nice mix of value and features. I’m really enjoying the iOS integration (used to use an external bluetooth speaker for podcasts and the like). With a little more confidence in my car now I’m actually hoping to hit to road a bit and do some visits to regional CocoaHead events and the like. If there is an event coming up you’d like to recommend let me know.