Programming for Non-Programmers Class

Business & Tech SignYou would think that someone who grew up in the heart of Silicon Valley, who worked at Google, and who has launched 3 tech startups now would know more about coding than I actually do—but the simple fact is that I am a totally NOOB when it comes to programming. More recently I have been motivated to learn about coding on a much deeper level (some of the reasons why are mentioned in my prior blog post here). Last month I decided to take a coding class called “Programming for Non-Programmers”, an online class taught by One Month for the technically challenged like myself. To be honest, at first, I was not sure if it was the best class for me to take since my goal is to eventually be able to program my own prototypes, fix any problems with my current tech ventures, and to fully know when I am being bullshitted by a developer. So I was unsure if spending 4 weeks learning more foundational stuff versus just jumping right into a hardcore programming class was going to be a good use of my time.

Needless to say, I am extremely happy I took the course. Not only did I learn a great deal about the foundations and history of programming (which I probably wouldn’t have really learned otherwise), but also I got a great introduction into the front-end programming languages, which include CSS, HTML, and JavaScript.

The course was four weeks long and each week held some new knowledge that I either a) knew a little bit about, but not enough or b) knew nothing about and didn’t even realize it was something I needed to know.

Week 1 specifically focused on getting your ideas out from your head and onto your computer. We learned about the art of programming. We learned about MVPs, different job functions and knowing who best to hire, how to figure out and answer key questions in a business assumptions worksheet, and visual design (both the important components and key concepts). We also went more in depth about the difference and importance of wireframes vs technical design flow diagrams and what their uses and functions are.

Week 2 focused much more on de-mystifying the back-end languages. We learned the different types of languages (high end vs low end) and why you would use one language over another (hint it depends on the project and whether it is a native mobile app or web-based). We also dug deeper on responsive design, different types of frameworks, and understanding tech stacks.

Week 3 was probably one of the coolest weeks because we actually got into some real coding using the front-end languages. We dug a bit deeper into CSS, HTML, and JavaScript. We learned some key terminology like arrays, functions, and conditionals–and we even got to build (okay, modify really) our own randomizer app and super simple website.

Week 4 was sadly our last week. The final week focused on content management systems (CMS), understanding how to get your site “live” (i.e. from your computer onto the internet), and how to actually update live sites. You can check out the cool 1990’s-esque website I built here for my final project using the front-end languages I learned. Having worked in the entertainment industry for many years, I really love documentary films, so my final project helped me showcase some of my favorite social impact documentaries. While my final project may seem very simplistic (it is!), however, if you put it in context–this is coming from me– someone who knew none of this stuff a few weeks ago. Needless to say, I am pretty proud of my old-school site—maybe I should share it on my MySpace page! 😀

Week 4 also gave us some great bonus videos about Git and GitHub. We also discussed the importance of a job scorecard when hiring a new employee. You can see the job scorecard I created for my hypothetical new employee for my side project, JabberCity. I think job scorecard’s definitely bring more to the table and get the hiring manager to think deeper about what kind of talent they need than a typical job description does.

So you may be wondering what my goals are going forward. Well, I am definitely a huge fan of One Month now and they offer a ton of classes. My goal over the next 3-6 months is to take a few more of One Month’s online courses. I want to become as proficient as possible in a few back end languages (mainly Ruby and PHP). 6-12 months or so from now, I would like to take an IOS class since my newest mobile venture, SWYK, is built primarily for IOS. As I stated above, I want to become proficient enough in coding so that moving forward I can fix bugs that I come across in my own tech projects, I also would like to be good enough to build my own simple prototypes should I have any other crazy business ideas going forward. I think having some programming skills will also help me make better hires in the near future for my companies.

I do highly recommend taking an online course if you want to learn something new. It’s an efficient and often affordable way to learn new skills. In fact, if you are curious about learning how to code, I highly recommend One Month’s Programming for Non-Programmers (PFNP) class as a great starter class. The class will give you a great foundation on programming and the overall fundamentals you need going forward. Not to mention that there is some great “live” support. Our teacher Chris was awesome. He hosted weekly office hours, answered questions on our shared Slack channel throughout the week, and gave us great feedback videos on the homework assignments. Plus the other students in the class are also there to help out and they really add to the enrichment of the class. PFNP really is a great primer for those who eventually want to go deeper into more hardcore coding.

That’s it for now. Happy learning!

What is a Job Scorecard, anyway?

entrepreneur-illustrationOne of the most important things I’ve learned as an entrepreneur is that who you hire can truly make or break your company. It is important to hire folks who not only have the right skills, but also who fit well into your company’s culture. With that said, I recently learned about a great new hiring tool that can help any hiring manager more fully assess the type of person they need to hire — no matter what kind of job they are hiring for. This awesome tool is called a Job Scorecard. The Job Scorecard goes much deeper than a job description because it forces you to figure out your desired outcomes for the position, as well as core skills and competencies. It also gives you a better way to evaluate candidates during the interview process because you can clearly assess whether their background and skills truly fit your desired outcomes and competencies. I have included a sample Job Scorecard of a fictional job I would like to hire someone for in the near future for my side project JabberCity.

————————————–

Digital Marketing Manager

JabberCity

Mission:

JabberCity is Orange County’s newest resource for helping busy parents efficiently, safely, and quickly plan birthday parties for their littles. The Digital Marketing Manager’s mission is to lead JabberCity’s digital marketing efforts by defining, evaluating, and refining our digital marketing strategies, driving traffic to jabbercity.com, and increasing followers on all of JabberCity’s social media platforms.

Outcomes:

  1. Create a comprehensive digital marketing plan that includes SEO, SME, and SMO strategies and analytics, and outlines key metrics, promotions, potential partnerships, with projected outcomes within the first month on the job
  2. Increase the number of Facebook, Twitter, and Pinterest followers from 5 to 2,500 within the first 6 months
  3. Revamp our MailChimp newsletters to ensure they are more tailored to our target audience
  4. Increase the number of sign ups on our email list from 0 to 1,000 within the first 6 months
  5. Increase traffic (views) to website from 0 to 10,000 monthly views within the first 12 months

Job Competencies:

  1. Flexible. Able to work in a fast paced, scrappy, startup environment and be able to go with the flow when things inevitably change at the last minute.
  2. Great Communicator. Able to effectively and clearly communicate all goals, inefficiencies, problems, and potential solutions to all team members, including developers, designers, and external partners/vendors. Updates people frequently.
  3. Organized & Analytical. Able to handle multiple streams of information and complex data and be able to make sense of it. Report data in an organized, clear way to help make recommendations on JabberCity’s strategic direction.
  4. Inspiring Leadership. Be able to lead others by example. Can perform duties as well as lead others without constant direct oversight. Able to inspire direct reports and other team members to do their best work.

Cultural Competencies:

  1. Wants to do a kick-ass job. Constantly pushes at the status quo to make things operate and function at their top performance.
  2. Uses data to make informed decisions and recommendations. Extremely results-oriented and strongly believes in using data to improve and change services and products as needed.
  3. Has our user’s best interests at heart. Understands that users are the most integral part of our business and goes out of the way to ensure that they are getting the best experience and service.
  4. Team player. Works well with others, listens to others, and deals with conflict head-on in a calm and collected manner.