Megan Taylor

front-end dev, volunteacher, news & data junkie, bibliophile, Flyers fan, sci-fi geek and kitteh servant

post

Documenting a Clean MacOS Mojave Install

I’m reviving a 2013 MacBook Pro with a clean install and fresh setup. This is mostly documentation for myself.

System Preferences

Install some apps

LastPass
Dropbox
Chrome
Chrome Sync + Extension Settings (must check each extension and copy from previous settings manually)
Mac App Store Apps

Homebrew

At this point I decided to take the opportunity to learn something new. A coworker had recently taught us about dotfiles at our weekly tech check-in, so I wanted to see if I could install the rest of my apps using Homebrew.

I installed Homebrew and Homebrew Bundle and created a Brewfile based on what I had installed on my work machine. I created a dotfiles folder in my Documents folder and stored the Brewfile in the dotfiles folder. Then I opened that directory in Terminal and ran brew bundle.

Mischief managed!

Last couple of steps to reach basic usability:

  • make bash auto-complete case insensitive with echo "set completion-ignore-case On" >> ~/.inputrc
  • setup git/ssh keys

At this point it’s been about 1.5 hours since I started.

My Specific App Setup / Persnickety Shit

Add licenses for Alfred, Bartender, BetterTouchTool and HyperDock
Setup/log into Airdroid, Alfred, Bartender, BetterTouchTool, Franz, HyperSwitch, HyperDock, Kindle, ReadKit, Slack, Spillo, Stretchly, Todoist (copy settings for ReadKit and Spillo from previous settings manually)
Add Spillo, ReadKit, Chrome, Slack, Franz to dock
Install SetApp apps
Customize right-click menu
Enable dragging by swiping on trackpad:
System Preferences > Accessibility > Mouse & Trackpad > Trackpad Options > Enable dragging
Enable git colorized output: git config --global color.ui auto
Setup VSCode with Settings Sync extension (Gist)

post

Reducing dependency on console.log

A co-worker recently brought to my attention that I always reach for console.log when I’m trying to figure out why some code is not behaving as I expect. It’s rather like always reaching for a hammer and ignoring the screwdrivers and wrenches. Sometimes a hammer is the right tool. Sometimes it’s not. Ultimately, scattering console.log around your code like fairy dust is not a particularly effective debugging method.

 
These are some things I’m reading to branch out and get comfortable with more debugging tools and techniques:

I hope these links are helpful to others looking to improve their debugging processes!

post

Reflecting on my years of teaching web development with ScriptEd

A new school year means another year of teaching with ScriptEd. This will be my 5th year! I’ve been reflecting on how much I’ve grown since my first year with ScriptEd:

I had the worst stage-fright and could barely get through a 5-minute lecture without becoming breathless and shaky. Once I actually stopped in the middle of a lecture and ran out of the classroom, leaving the other volunteers to pick up where I left off. While I’m still no TED speaker (though ScriptEd’s co-founder is), I can get through a class without heart palpitations. I don’t have to read directly off the slides and it doesn’t completely throw me off-track when I stumble over something or when a student interrupts with a question. I’ve even given talks at QueensJS and DjangoGirls events.

I knew just enough JavaScript when I started teaching to read a simple function, mostly understand it and maybe edit it. I learned JavaScript by teaching. Nothing is more motivating than having students depend on me. I’m driven to understand the material at a deeper level and find engaging ways to help them understand it.

Now I write JavaScript almost every day at work. Over the past 4 years I’ve built websites with advanced animations (pieces of a car that fall into place as a user scrolls, a tumblr-style lazy-loading masonry page that scrolls forever and ever) and several applications using React.

Teaching has also improved my ability to communicate at work: I use similar strategies to explain technical concepts to producers and product managers so they understand what I’m working on, struggling with, or need clarity on.

I have more empathy, patience, self-confidence, and new friends among my fellow volunteers.

Teaching is one of the hardest things I’ve ever done, and its also an amazing way to learn.

post

Things That Happened in 2017

Kyle and I spent two amazing weeks in Japan.
I traveled to Turkey and Israel for two weeks with my Dad.
One of my bestest pals from high school got married.
A friend brought her kid to NYC for the first time and I got to take a train-obsessed 6-year-old on his first subway ride.
I got my ears re-pierced.
Kyle and I saw Dropkick Murphys, Rancid and Bouncing Souls at Coney Island.
I participated in the Day of Dinners, and had some amazing conversations with cool people in my neighborhood who I haven’t heard from since.
During a round of layoffs at work, I didn’t lose my job.
I finally made it past the shin splint phase of starting to run again and went from a 16-min mile to a 12-min mile before it got too cold to run anymore.
Kyle and I spent the holidays with our families.
Many walks and foods around NYC.
I visited a friend in Miami, we went rock climbing, and the car died on the way home.
Another great year of teaching with ScriptEd.
Kyle and I took his parents to The Cloisters, which was my first time there not for a Medieval Festival.
I kept doing CrossFit, participated in the CrossFit Open, didn’t die, and have gotten much stronger.
My mom took us to see The Play That Goes Wrong, and my face hurt from laughing.
NYC Summer Ice Cream Blizzard!
I got to pet, hold and/or cuddle a ridiculous number of animals.
Both sets of parents came up from FL to visit. (Separately, thankfully.)
Kyle and I built our own coffee tables when we couldn’t find what we wanted.
I have continued to shave my head.
A trip to The Miami-Dade Zoological Park and Gardens.

And probably a lot of other stuff I can’t remember right now!

January 1, 2018 | Comments Off on Things That Happened in 2017 | Categories: Posts | Permalink

post

CSS initial Keyword

Note to self: The initial keyword is not supported in Internet Explorer 11 and earlier versions. Just use auto!

July 13, 2017 | Comments Off on CSS initial Keyword | Categories: Posts | Permalink

post

Things That Happened in 2016

This is super overdue, but 2017 has been busy!

Celebrated being bed-bug free after a harrowing couple of weeks.
Blizzard!
I got a standing desk setup at work.
Kyle and the kitties got me an All-Clad pan for Mother’s Day.
I squatted 175lbs.
I started doing CrossFit.
Shortly after starting CrossFit, my face got into a fight with a 20-lb ball. My face lost.
Kyle and I started planning our 2017 trip to Japan.
I started learning about React, Redux, and functional programming in JavaScript, and using these skills at work.
We all survived Dad’s hip surgery, part IV.
I spent a week in Miami to celebrate my best friend’s birthday.
Mom and I spent a day exploring Philadelphia’s Market St (and adjacent areas) from 30th to 3rd.
Another great year of teaching with ScriptEd.
Many walks and foods around NYC.
Visits from parents.
Met some family members from another branch of the tree.
Saw Fully Committed.
I shaved my head for the first time.

And probably a lot of other stuff I can’t remember right now!

June 6, 2017 | Comments Off on Things That Happened in 2016 | Categories: Posts | Permalink

post

JavaScript Code Kata

Dave Thomas was recently on the CodeNewbie podcast and talked about code kata for a few minutes.

A kata is an exercise in karate where you repeat a form many times, making little improvements each time.

kata

The code kata is a way to bring practice sessions into programming.

In my day-to-day work, the problems I solve with JavaScript are not complicated:

  • sticky nav
  • add/remove class based on behavior
  • handle click tracking
  • carousels
  • form validation
  • lightbox

 

So this seems like a great way to stretch my JavaScript legs, so to speak. There are many places online to find code kata; I signed up on Codewars. Even at the beginner and novice levels, I’m working through problems that extend my abilities.

But also, math.

buffyew.gif

 

If you’re interested in doing code kata yourself, LMGTFY. If you happen to sign up on Codewars, I’d love to know so we can compete against each other!

January 27, 2016 | Comments Off on JavaScript Code Kata | Categories: Posts | Permalink

post

Things that happened in 2015

I proposed and helped shepherd changes in tools we use at work for QA and HTML emails.
I planned and executed a field trip for my ScriptEd students to my office, with a lot of help from my awesome coworkers.
I spoke at Career Day at Chelsea Career and Technical Education High School.
I worked on a Chrome extension to help coworkers write presentations in markdown.
Some coworkers and I (wo)manned a table for Career Day at Harlem Village Academies High School.
I spoke about learning web development at Django Girls NYC.
I helped The Story Exchange produce their 1000 Stories project about women entrepreneurs.
I worked on more than 30 websites.
I closed more than 700 tickets at work.
Kyle and I saw Kinky Boots.
I was in the office 2 blocks away when an armed veteran walked into the lobby of a federal building, shot and killed an armed private security guard and then shot himself.
I went to Smorgasburg in Brooklyn and Queens.
Kyle and I went to the Queens Night Market, where Kyle discovered lumpia.
Kyle and I went to an Atlas Obscura event in Greenwood Cemetery.
Kyle and I spent 8 days running around Prague and Southern Germany. We rented a Mercedes and drove >200 MPH on the autobahn. We ate amazing food. We saw beautiful things. We stayed in a hostel.
My family survived my Dad’s hip surgery with minor bickering.
I visited high school friends in the DC area.
Pixel earned the nickname “String Butt” after an emergency trip to the Animal Hospital.
Kyle and I went to the The Rocky Horror Picture Show Experience at the Museum of the Moving Image.
Kyle and I went to the Great Big Bacon Picnic with some of my coworkers.
Kyle and I saw Louis C.K. at Madison Square Garden.
Kyle and I got renters insurance.
I went to the Hamptons for the first time with some great people from ScriptEd.
I played ping pong (badly) with my Mom.
I redesigned the Bummer Bears website to be responsive.
Kyle and I reached the peak of adulthood by buying a frame for our bed.
I learned to like guacamole.
I started lifting weights with a personal trainer.
I went to physical therapy and resolved my back and neck problems.
Kyle and I started saving up to buy a house (someday).

And probably a lot of other stuff I can’t remember right now!

December 31, 2015 | Comments Off on Things that happened in 2015 | Categories: Posts | Permalink

post

Infinite Carousel with jQuery 1.6

I’ve been working on some updates to a site that uses a pretty convoluted and customized combination of JavaScript files, including jQuery 1.6.2. Building an infinite image carousel was an interesting challenge.

JS Bin on jsbin.com

I got a lot of help from these articles:

Making a jQuery infinite carousel with nice features

Create a Simple Infinite Carousel with jQuery

jQuery endless looped slider

I hit an interesting little bug where the browser buffers SetInterval functions, and was able to resolve that with help from this StackOverflow thread: When using setInterval, if I switch tabs in Chrome and go back, the slider goes crazy catching up.

September 10, 2015 | Comments Off on Infinite Carousel with jQuery 1.6 | Categories: Posts | Permalink