Category Archives: Learning

HBX Core – Harvard Business Schools Extension Program

HBX Students

Introduction:

Harvard Business school runs HBX – Core, an online business learning platform.  HBX Core is composed of 3 classes: Accounting, Statistics and Economics for Managers all targeted at improving your business understanding and becoming a better manager.  Once you complete all 3 courses, you get the: credential of readiness.  What does the course cover?

Financial Accounting:

The course covers accounting transactions, financial statements and some basic financial analysis/forecasting.  It covers some accounting principles as well (historical pricing, consistency..).  It’s a great course if you want to understand accounting basics.  The instructor uses real life examples in his course including Cardullo’s located in Cambridge, Ma next to Harvard as well as Bikram Yoga, a yoga study in Natick, Ma.

Statistics (Business Analytics)

This course covers descriptive statistics: mean, median and mode, hypothesis testing, confidence intervals and regression (both single and multiple).  This is similar to an 1st or 2nd class in statistics.  It’s in my opinion a bit more intuitive in it’s explanations than the course I took in college.  One highlight of the course is it’s emphasis on statistic calculations n Excel, which are mostly single formula based.

Economics for Managers

This is an economics course that focuses almost exclusively on microeconomics.  The class can be evenly split into two parts: demand vs supply with the last portion emphasizing the intersection (market).  This course is cool in that all the examples are really intuitive.  You will explore demand curves by answering polls, supply curves by looking at the entire aluminum industry in an interactive graph, price wars by using financial statements and short vs long term markets by looking at the short/long term demand for lawyers.  This course also covers alternative distribution methods such as queues, the formation of secondary markets during a price ceiling, different types of auctions and the two-tariff price model (subscriptions that lower the average price charged per unit).  I liked this course the best.

HBX Courses

Alternative

Something very similar in nature to the above program, but requiring significantly more time: CFA level 1.  CFA level 1 is 1 of 3 exams to become a Chartered Financial Analyst, a designation valued in the investor industry.  It covers ethics around investing, statistics focused on investments, financial statements, micro and macro economics (focus on interest rates and monetary policy).  The section dedicated to finance is twice as long as all the other sections combined.

Summary

Overall, it’s a descent program if you are interested in learning business fundamentals.  It’s also reasonably priced ($1950) and offered by a credentialed university (Harvard), which means you can expense it under most firms education reimbursement policy.

 

Data Camp: Week Adventure into Python Data Science

Image result for data camp

Introduction:

Noah, a former TechTarget colleague, mentioned  datacamp.com  to me, while we were discussing an issue with remotely hosted files (probably rdp associated) and pandas DataFrames.  On February 10th, I decided to give it a try and today, 6 days later, I finished up the Python Programmer Track (10 classes)!

What is Data Camp?  Data Camp is an online education company that offers data science specific courses.  They focus mostly on two lines of technology: R and Python.  They offer some auxiliary courses in other topics: SQL, Linux and git (as well as a few derivatives).  All the courses are hosted on their online platform, which overall is beautiful to interact with.  A bit more about the topics:

Data Camp Topics:

R – Statistical Programming Language

A statistical programming language inspired by LISP and developed by professors at the University of Auckland.  R has become famous amongst statistics and machine learning researchers where they prototype cutting-edge research and provide it as packages to CRAN, a online index for hosting R code.

Python – General Purpose Language

A general purpose programming language developed by Guido van Rossum.  It’s a dynamically typed, interpreted language that has been used for rapid prototyping and scripting.  Python as a general purpose programming language that can be used for: web development, networking, devops, data analysis and machine learning.  Python has gained popularity over the last few years with increased interest in it’s scientific computing platform.  Pandas, a popular Data Science framework, was inspired by R’s data frame.

SQL – Structured Query Language

Structured Query Language, SQL, is a domain-specific language typically associated with relational database management systems (RDBMS aka SQL databases), but has been coopted by other solutions (BI platforms, Hadoop and Spark).  SQL is easy to learn and revolves around a few common entities: Servers, Databases and Tables (Views etc).  Tables can be viewed as tabular data where rows are entities (employee) and columns are attributes of the entity (salary).  Most SQL is used to retrieve data hosted in tables mediated by RDBMS.

Context

R and Python are used to manipulate data in a procedural way, typically through the use of things like Data Frames (R), Pandas (Python) or Numpy (Python).  These libraries create tabular, matrix, vector or scalar data often rely on vectorized operations to do computation.  Both R and Python have extensive data visualization frameworks to create graphs.  They also have great libraries for statistics, machine learning and artificial intelligence.  SQL is primary associated with data retrieval and is used to get “data” back from a hard drive (through the database).  Most database are more limited in functionality when it concerns more finite data manipulation, graphing and machine learning (though extensions do exist).  They make up for it by being able to store large quantities of data without relying extensively on memory (volatile and limited).  Generally, most software engineers and analysts use both a programming language like (R/Python) and SQL (to access data).

Data Camp:

Summary:

Data Camp breaks down Python/R courses on career tracks: Python Programmer, Data Analyst and Data Scientist.  Each track is composed of a number of courses: 10, 13 and 20 respectively.  Topics covered: basic programming, data manipulation techniques, graphing, statistics, machine learning, network analysis and ai (1 course).

Each course is composed of 3-5 segments.  Each segment has a set of lectures followed by exercises.  You can expect around 3 lectures and 10 exercises per segment.  Most courses build on themselves intuitively beginning with the basics and gradually building up in complexity.  I was surprised to find lectures on generators, closures and how they relate to data frames within the first 4 classes.

Lectures:

datacamp lecture

Lecture portion of the website is beautiful.  Presentations have nice transitions and the website background is not distracting.  Lecturers were clear and easy to follow.  You get a sense that al to of effort was put into the curriculum.  There were multiple lecturers in the 10 courses I took (around 5-6).  Some of these lecturers work for esteemed companies like Anaconda, published books on the topic they spoke on or had a background in software engineering/consulting.  Overall, the lectures were high quality with very few mistakes.

Practice Sets:

datacamp practice problems.

The practice problems were conducted in what looks like a modified ipython notebook embedded in the website.  They have 4 panels, the 2 on the left: exercise and instructions and 2 on the right: Scrapt.py and ipython Shell.

The exercise and instructions provide guidance on how to complete the exercise.  The Exercise section explains the topic.  The instructions tell you what steps need to be completed before submission is excepted.

Script.py is where you write your code.  The run code button let’s you execute script.py and see the output in the IPYTHON SHELL.  It’s pretty interactive.  When you submit answer, it checks if the solution matches the instruction section.  For the most part, there are few cases where code I submitted was marked wrong when it was in fact right.  That’s great!

What if you get stuck on a programming problem?  There is a button called hint.  This provides some extra guidance typically in the form of small chunks of code.  If you press the hint button, a new button called show solution will appear.  Clicking the show solution button will overwrite the SCRIPT.PY window with the correct solution, which you can then run and submit.

In rare occasions, you might end up with a multiple choice question.  They offer an interactive shell in this case.  It always proceeds the more free-form question variant.

Gamification:

Data Camp has one really great feature that I liked.  Each exercise has an amount of xp that you can collect.  Each lecture is worth 50xp, multiple choice is worth 50xp and problem sets are worth 100xp.  If you click the show hint button, the problem set xp is reduced to 70xp.  Show solution gives you 0xp.  When logging in, you will see the total xp you got that day as well as how many days in a row you have utilized data camp (streak). This is a great way to motivate you to do the exercises.

Another layer of gamification comes from certificates you can collect (and post on linkedin) as well as career tracks you can complete.

Cost/Summary:

I think data camp is very friendly to beginners interested in learning about data analysis in Python and R, both marketable skills.  I think the course layouts, lectures and practice problems are well thought out.  I would suggest that beginners also read books and online documentation on subjects like Pandas and Numpy.  I found data camp focused more on practicing skills and less on implementation details (which is a good thing).

Data Camp is currently on sale for $180/year (usually $300/year).  You can also buy it as a monthly subscription for $30/month.  Data Camp is similar to Udemy.  There are 3 advantages Data Camp has over Udemy:

  1. Practice problems make up a larger percent of the curriculum.
  2. $30/month you have access to any one of 100+ courses.  The Udemy equivalent is $15/course.  A Udemy course is equivalent to 3 Data Camp courses (in material)
  3. Data Camp specializes in data science and has really thought about how to naturally progress through the data science material.
  4. If you like structured programs, this is better.

Advantages of Udemy:

  1. Overall larger selection of content, variety and topics.  If you want to practice Python, but want to tackle multiple topics like: web programming, networking, penetration testing or a specific subset of machine learning.  It might be a better option.
  2. There is no subscription fee.  It’s fixed cost.  If you are not sure you want to invest a lot of time into python programming this is a better choice.
  3. Lectures are not as uniform.  You might find some lectures that are more theoretical.  Others are more practical.  That means you can try out different lecture styles to see what works.

Best,

Chris

 

 

Modern Operating Systems: Book Review

Dear Reader,

I decided to write a quick review for a book I read through while taking a Operating Systems course at Harvard Extension.  I’m currently re-reading through it and found it really useful.

Modern Operating Systems goes through basic components of a computer and talks about how the operating system interacts with it. Topics covered:

  1. Processes, CPU and Scheduling.
  2. Memory and Paging.
  3. File System and I/O devices.  I/O section is split into block and character devices with smaller sub-sections on clocks.
  4. Deadlocks and algorithms to resolve them.
  5. Virtual Machines and Security.
  6. Examples of Operating Systems: Android, Windows and Linux.

Currently about 50% through the book.  The book covers gets pretty detailed.  Topics in the book that I found really interesting:

  1. Scheduling algorithms and how processes are swapped out by the CPU.
  2. Mutex/Semaphores and the concept of locking a resource.
  3. Different levels of caching involved in CPU, memory and file-system.
  4. How memory, virtual memory and swapping works.
  5. I/O devices: it gets into the details of a hard disk and breaks down what determines seek time.

I plan on getting through at least 20-30% more of the book as it provides some extra context for my job.  I spend a lot of time working with virtual machines (AWS) and have to look for problems like a pegged CPU or high-levels of memory consumption.  Understanding what happens under the covers from a operating system perspective is useful.

Best,

Chris

 

Yoast App

Yoast Application for WordPress

Yoast Application for WordPress

Introduction

Yoast (website) is a group dedicated to SEO, which provides a free WordPress plugin to improve your website.  The plugin has useful features.  For example, it computes a readability score and scores your post for Google keywords:

Yoast plugin

Readability

Yoast plugin makes suggestions to improve readability of your blog posts.  On Yoasts website, you will see a summary of how to plan blog posts:

Practical tips to set up a clear text structure

Within the practical tips webpage, Yoast explains the importance of headers (<h1>,<h2>…).  Headers, larger text found above paragraphs, provide context about the paragraphs that follow.  This provides Google with benefit when matching search queries with your website.  The post discusses the use of transition words to connect and smoothen the flow of the paragraphs.  Yoast app automatically calculates this for the blog post you are typing.  It recommends that 30% of words be transition words.

Transition words are one of three main metrics I often work on to improve posts.  The other two are active vs passive voice and Flesch Reading Score.  Active voice places the emphasis of the sentence as the main object instead of the subject.  For example, “Chris plays the trumpet” is active voice vs passive “the trumpet is played by Chris.  Active voice is considered less confusing then passive voice. With passive voice, it is harder to figure out what the sentence is about.  More about passive voice below:

Passive voice

The last metric on readability is the Flesch Reading Ease test (wiki:Flesch-Kincaid readability test).  Flesch test provides a formula that is supposed to correlate with ease of use:

Formula

Flesch-Kincaid Formula

Results

Flesch Score Results

Formula Conclusion

The major conclusion from this formula is that you want short sentences with few syllables.  This style of writing correlates with easier comprehension.  It also decreases the odds people will run away from your website.

 

Key Words

Another section of Yoast focuses on key words.  Key words are words in Google search queries that you would like your post to be associated with.  For example, I might want this specific blog post to show up when people type: “Improve blog post readability” or “Yoast features” into Google.  The underlined words would be my key words. The plugin provides key metrics on your chosen keyword:

Keyword Analysis

How do I look on Google?

The last cool feature worth mentioning is you can edit how you look like on Google.  Evidently, a website can provide some metadata (data about the webpage to Google), which tells Google how to present your webpage as a search result.  The below form provides SEO Title, the blue name (hyperlink) of your website.  A slug, which is the end of your url, in the below case (yoast is the slug): christopherkottmyer.com/blog/2017/09/22/yoast.  As well as the description google uses for your webpage.

Google Metadata

Overall, Yoast provide a really cool tool set to improve your blog posts.  It also provides a study into what an expert thinks is great content.  Hoping this helps readers develop better content and improve their own readability!

Best luck blogging!

Chris

Related ChrisKottmyer.com Posts:

SEO for Growth – Bend Google to your Way!

SEO for Growth

SEO for Growth Book

SEO for Growth

Bloggers often make fortunes with financialsamurai.com being a great example.  The question, how do you become a successful blogger and more importantly a successful marketer.  SEO for Growth by John Jantsch and Phil Singleton discusses how you can optimize your blog to beat those Google Search rankings and be listed on the first page.  That can be the difference between getting no traffic and being like this cute pug watching money fall from the sky.

Cute pug watching $1 bills fall

Isn’t he cute!

What does Google hate?

Spammy pages that look more advertisement then content!

You forgot smart phones exist!

You cover half your webpage with Eye Junk!  The other half is infinite scrolling.

You are a copy-paste king/queen.  Very original!

What Google Likes!

Google is in the business of answering search queries.  Anything that detracts from that is bad business.  Google is interested in original content that best answers search queries and penalizes websites that produce noise or distraction. To simplify marketers and web designers lives Google provides resources on best practices curate great content and provides tools to analyze your website (site maps, simulations of google crawls, viewing data and more).  Google also graciously provides paid advertisement as well:

Adwords!

Each day, 3.5 billon people ask Google a question.  Over a single year, that is 1.2 trillion searches.  That’s as many searches a day as Donald Trump is estimated having in cold hard cash.  You as an advertiser wants a slice of those people’s attention, which is where Adwords comes into (word) play.  Adwords let’s you bid on search terms, the questions people ask.  Rarer search terms have less demand.  SEO for Growth says this is fertile ground as you can bid for more targeted terms that better represent your customer.  In turn, your customer is more likely to convert into a purchase or blog reader.

Google Analytics! 

Everyone loves a dashboard.  Don’t they?  Google Analytics might be a Marketers Mecca in that it prevents a view of your audience.  Do people coming to your websites like your article on clothing or would rather stalk your About me page?  Google Analytics also tracks other useful information.  For example, where did the person originate?  Did they start on another 3rd party website or where they intensively Googling for an answer?  This type of information can help you fine-tune what appeals to your audience and, if you are clever, be utilized for A/B split test.  A/B split testing is when you send people to two webpages that differ by a single feature.  You then see who stays around, buys or clicks on more ads (group A or B).

Google of course provides a lot more tools than presented in this blog.  I will most likely get into more details in the future.  For now, I have a laundry list of site improvements mentioned in SEO for Growth!

Hopefully, with these tools, I can finally have my website pay for my next Latte!

Best Luck Blogging,

Chris