rendezvous with cassidoo

Archive

🍯 "The purpose of life is to be defeated by greater and greater things." - Rainer Maria Rilke

Hey friends!

I hope you all had a great week! I traveled to teach my last workshop of 2019, and I'm glad to be home. Onwards!

Web links of the week

Awesome CSS Image Hover Effects That You Can Use on Your Website (featuring yours truly!)
Why does JavaScript have -0?
create-react-app 3.3.0 released

Something that interested me this week

I played the board game Wingspan for the first time this week, and it was a WONDERFUL experience! I really, really enjoyed it. It wasn't too long, has beautiful art, had some complex ideas (which makes me excited to play it again), and the parts were all pretty high quality, too. I love a good board game, so I'm really excited to add this one to my repertoire!

I ended up looking up the designer of the game, Elizabeth Hargrave. I was pleasantly surprised to see that the designer and all of the artists behind Wingspan were women (which is rare) and I had to learn more! She seems to be a fascinating person, and my favorite thing about her website by far was her database of Women and Nonbinary Board Game Designers. Check it out!

Interview question of the week

Last week I had you write a JSON parser! Quite a few people sent in answers like Ali that used JSON.parse(), which yes, is totally valid. But, Tan went above and beyond and not only wrote a parser from the ground up, but also wrote a super helpful blog post about it (and I saw it featured in JavaScript Weekly this week, amazing)! Good work Tan (and Ali + others)!

This week's question:
Given a positive number N, generate binary numbers between 1 to N using a queue-type structure in linear time.

Example:
> binaryQueue(10)
> 1 10 11 100 101 110 111 1000 1001 1010 1011 1100 1101 1110 1111 10000

Cool things from around the internet

The Lie That Helped Build Nintendo
“Link In Bio” is a slow knife
7V Prototype with Enjoypbt Kuro/Shiro prototype keycaps

Joke

Everyone knows where the Big Apple is, but does anyone know where the Minneapolis?
That's all for now, folks! Have a great week. Be safe, make good choices, and tie up your loose ends, 2019 is almost over!

Special thanks to Gabor, Stephen, and Louis for supporting my Patreon and this newsletter!

cassidoo

website | twitter | patreon | github | codepen
#122
December 16, 2019
Read more

🦞 "If it's out of your hands, it deserves freedom from your mind too." - Ivan Nuru

Hello friends!

I hope you all had a cozy week! Mine was great, I got a lot of coding (...and Fortnite) done. Let's boogie.

Web links of the week

react-screenshot-test
JavaScript, ES6, ES7, ES10 where are we?
Masking GIFs with other GIFs
JavaScript Algorithms and Data Structures

Something that interested me this week

This past week was my birthday! I gathered friends and family to watch Full Metal Alchemist with me while we ate Cheetos and Oreos and cheeses. It was awesome.

Interview question of the week

Last week I had you write a day-offset function! We had a TON of responses! Nice work Derek, Sophie, Stephen, Tom, Dylan, Garrett, Hatem, Sergio, John, Jesper, Dave, Daniel, Leslie, Javorszky, Quentin, Gabriel, Eric, Pablo, Tan, Ilya, Tina, Chris, Mohd, Andre, Angel, and re:fi.64!

This week's question:
Write a function that takes in a string of valid JSON and converts it to an object (or whatever your chosen language uses, dicts, maps, etc).

Example input for testing:
fakeParseJSON('{ "data": { "fish": "cake", "array": [1,2,3], "children": [ { "something": "else" }, { "candy": "cane" }, { "sponge": "bob" } ] } } ')

Cool things from around the internet

Red TGR Alice with lubed Black Gateron Inks Typing Sounds ASMR
Three by land: Life-changing tales from female travelers
What happened when I showed vintage Mister Rogers to my 21st-century kids

Joke

My friend keeps saying, "cheer up, buddy, it could be worse, you could be stuck underground in a hole full of water."
I know she means well.
That's all for now, folks! Have a great week. Be safe, make good choices, and get your goals done!

Special thanks to Gabor, Stephen, and Louis for supporting my Patreon and this newsletter!

cassidoo

website | twitter | patreon | github | codepen
#121
December 9, 2019
Read more

🐌 "You are under no obligation to be the same person you were five minutes ago." - Alan Watts

Hi friends!

Happy December, I hope you all had a great week! Mine was great, I spent a lot of time with family for the holiday. Onwards!

Web links of the week

whocanuse
Build fake 3D HTML5 games with Phaser, Arcade physics, three.js and Phaser 3D library
Legra
Faster JavaScript Apps with JSON.parse()
litegraph.js  

Something that interested me this week

This past week was mostly packed with visiting with family and friends! It was a really nice time. As you can imagine, there were also some computer questions. :)

Interview question of the week

Last week I had you implement rock, paper, scissors! There were some really fun, creative solutions from Jordi (who did it with logic gates!!), Leslie, Gabriel, Eric, Alex, Dimitris, Kyle, and Rubén!

This week's question courtesy of Louis:
Write a function that takes the name of a day (e.g "Monday", "Tuesday") and an integer offset, and returns the name of the day which would be the original + offset.

Extra credit: do it in 1 line!

Example:
> dayOffset("Wednesday", 4)
> "Sunday"

Cool things from around the internet

How to Draw Birds, Insects and Fish Simply (Chōjū ryakugashiki)
Wooden 60% with GMK WoB
11 Levels of Origami: Easy to Complex

Joke

How do you make a waterbed more bouncy?
Add spring water!
That's all for now, folks! Have a great week. Be safe, make good choices, and be cozy!

Special thanks to Gabor, Stephen, Louis, and Phil for supporting my Patreon and this newsletter!

cassidoo

website | twitter | patreon | github | codepen
#120
December 2, 2019
Read more

🙊 "Be careful with your words. Once they are said, they can only be forgiven, not forgotten." - Carl Sandburg

Hello friends!

I hope you all had a wonderful week! I'm off traveling for Thanksgiving after teaching a fun workshop in Chicago, and am looking forward to eating a bunch this week. Anyway, let's go!

Web links of the week

I created the exact same app in React and Svelte. Here are the differences.
The Modern Way to Use Promise- Based HTTP Requests: axios-hooks
Mobile Dark Patterns
grommet  

Something that interested me this week

I had a Philly cheesesteak for the first time this week! It might sound like a silly update, but I'm married to a man from Philadelphia and had never tried it. And, I'm happy to say, it was delicious!

We've now had them for 3 nights in a row and should probably stop.
...nah.

Interview question of the week

Last week I had you implement the substring() function! Nice work Alex, Daniel, Vasanth, Andrew, Tom, Ryan, Jesse, Nick, Matthew, Eric, Leslie, Daniel, Kyle, and Paul!

This week's question:
Implement the game rock, paper, scissors.

Sponsor

Raygun gives you end-to-end visibility into errors, crashes, and performance problems, so you can fix them fast and give customers the experience they deserve. Detect, diagnose, and resolve issues with greater speed and accuracy!

I am using their Crash Reporting on some personal projects, and I've already fixed several bugs that I would normally have missed. Check out their free trial!

Cool things from around the internet

Discipline 65% in Disc Jockey case
Lee-Sedol's sudden retirement + his Go life story Goproyeonwoo
End of a Decade  

Joke

People keep telling me I tell too many Thanksgiving jokes, but I can't just stop cold turkey!
That's all for now, folks! Have a great week. Be safe, make good choices, and be thankful.

Special thanks to Gabor, Stephen, Louis, and Phil for supporting my Patreon and this newsletter!

cassidoo

website | twitter | patreon | github | codepen


#119
November 25, 2019
Read more

✌️"A ship in harbor is safe - but that is not what ships are built for." - John A. Shedd

Hello friends!

I hope you all had a great week! I had a super busy one, and I can't wait to tell you about it. Onwards!

Web links of the week

Making instagram.com faster: Code size and execution optimizations
The New Features of GSAP 3
30 seconds of code  

Something that interested me this week

Welp, if you didn't notice, this email looks a liiiittle different than usual! That's because I'm now using Buttondown for my emails now! I switched to it this week and I'm really excited about it. Tinyletter was an awesome (free!) service, but this newsletter outgrew it, for better or for worse.

So far I've been pleased with Buttondown, there's a little bit more control with it, and it's not too expensive. That being said, if you'd like to help support this newsletter, I'd really appreciate it via Patreon or PayPal!

Another awesome thing that happened this week was the "RWC (rendezvous with cassidoo) Symposium"! My Patreon's Discord chat is full of so many smart, awesome people, that we decided to host our own little mini-online conference, and it was amazing. Everyone had very different talks, from concurrency to Java Spring to XAML to JavaScript to Waffle House! It was a great bonding and learning experience, and we're definitely going to do it again soon. Some folks chose to make their talks public, and we have a YouTube playlist here if you'd like to check it out for yourself!

And FINALLY, one last thing I promise, my newest keycap set I designed went public this week: DSS Tecla! I've written about the set design process already here, so I'll save you from reading too much more in your inbox, but I'm just glad it's finally out in the world after over a year of working to get it made.  


Interview question of the week

Last week I had you implement logic gates! Well done Louis, Leslie, Alex, John, Corey, EchoEye, Rodrigo, Tom (who implemented his solution in MINECRAFT of ALL THINGS), Hunter, Nick, George, Jehiel, and Andrew!

This week's question:
Implement the substring() function.  

Example:
"hello world!".mySubstring(1,5)
> ello 
"hello world!".mySubstring(6) > world!

Cool things from around the internet

Who Framed Roger Rabbit - The 3 Rules of Living Animation
KBD75v2 with SA Calm Depths
How to conquer your fear of public speaking once and for all  

Joke

Ugh, I hate Russian dolls, they're just so full of themselves! 
That's all for now, folks! Have a great week. Be safe, make good choices, and stay cozy.

Special thanks to Gabor, Stephen, Louis, and Phil for supporting my Patreon and this newsletter!

cassidoo

website | twitter | patreon | github | codepen
#118
November 18, 2019
Read more

🛢 "Be curious. Read widely. Try new things. What people call intelligence just boils down to curiosity." - Aaron Swartz

Hello world!

I hope you all had a great week! I was traveling all last week for work, and I'm excited to have a week at home to reset a bit. Onwards!     This past week I had the dreaded annual email that a bunch of my domain names were expiring (). I always buy domain names with such hope and optimism that I'll finish that one project that will finally put them to good use, and alas... so many go unused. I wonder how much of that behavior actually keeps domain name companies in business? Anyway, I'm determined to use ALL of my domain names this next year. And we'll see next year if I feel the exact same way as I do now. 😅   Last week was a puzzler! I had you get the maximum path sum of a binary tree. Well done , , , , , , , , and ! This week's question: Examples: > logicGate('AND', 1, 1) > 1     Thanks to for this one! I didn't think orthopedic shoes would work for me but I stand corrected.   That's all for now, folks! Have a great week. Be safe, make good choices, and Happy Veteran's Day for those in the United States! , cassidoo |  | | | 
#117
November 10, 2019
Read more

🚛 "The world is changed by your example, not by your opinion." - Paulo Coelho

Hey friends!

Happy November! I hope you had a great week. I'm halfway through a big traveling stint as we kick off the this week!     For Halloween this past week I made ! Because of traveling I didn't have much of a chance to dress up, but humor makes up for that, right? :)   This past week we had a TON of responses to the missing integers problem! Nice work , , , , , , , , , , , , , , , , , , and ! Here's a harder one for you this week: Example: for an easy visual! For this tree, maxPathSum would return 43 (the result of the path 20 + 3 + 10 + 10).     Doctor: "Ma'am, I'm afraid your DNA is backwards." Me: "And?"   That's all for now, folks! , cassidoo |  | | | 
#116
November 3, 2019
Read more

🧩 "The successful warrior is the average man, with laser-like focus." - Bruce Lee

Hello friends!

I hope you've had a great week! My friends and I went to a pumpkin patch/corn maze this past weekend, which was a pretty fun time. Onwards!     I have a ton of workshops coming up for work as we kick off the ! I'm currently on the east coast about to do my last training of October before the November tour begins. Teaching has been really fun, which I can say with confidence now that I have a few workshops under my belt! I really enjoy seeing people get those "ah ha" moments as they understand new things. With this gig, I've had a lot of time to code on side projects to practice concepts that I'm teaching (and come up with answers to issues that students might run into over time). I finally have a little , which I haven't had in a while! Well, I should say, I have a streak, but then this weekend I took a little coding break and played Minecraft with instead. :)    find the length of the longest increasing subsequence. , , , , , , , , , , and did a great job in various languages! This week's question: Example: > missingInts([1, 3, 3, 3, 5, 6]) > 2, 4 > missingInts([1, 2, 3, 4, 4, 7, 7]) > 5, 6     My friends say I'm the cheapest person they've ever met, but I'm not buying it!   That's all for now, folks! , cassidoo |  | | | 
#115
October 27, 2019
Read more

🦡"I have learned over the years that when one's mind is made up, this diminishes fear." - Rosa Parks

Hello friends!

I hope you had a great week! I was off traveling teaching for work, and I'm glad to be home and back to making memes. 
 

Web links of the week

30 Things We Often Forget When Designing Mobile Apps
Should We Rebrand JavaScript?
zero
Announcing WebAssembly.sh​
 

Something that interested me this week

This past week I got myself a tablet! I originally started thinking about getting one so that I could have my notes readily available while teaching workshops, but now I'm using it for practicing drawing, too! I found some online classes that I've been enjoying so far, and have really liked getting to be creative with it. If anyone reading has recommendations for drawing practice, I'd love to hear them!
 

Interview question of the week

Last week, I had you count sequences. Sophie, Dimitris, Leslie, Matthew, George, and Kyle did a great job answering!

This week's question:
Given an array of n integers, find the length of the longest increasing subsequence.

Example:
> subLength(13, 35, 1, 5, 40, 86)
> 4  // The sequence here would be 1, 5, 40, 86
 

Sponsor

Whoa, a new section! I'm super excited to say that I've partnered with Raygun! They approached me about wanting to support the dev community, and in talking with them and experimenting with their tech, I thought they were awesome and was glad to have them as a sponsor of this newsletter once a month. 🎉

Raygun gives you end-to-end visibility into errors, crashes, and performance problems, so you can fix them fast and give customers the experience they deserve. Detect, diagnose, and resolve issues with greater speed and accuracy. Also, their integrations list is impressive, they have plugins for everything from your favorite git service to task management to chat apps! Check out their free trial!
 

Cool things from around the internet

Gingham 60% with XDA Canvas
The world’s downtowns are slowly giving up on personal cars
Magic Tricks with Candy
 

#114
October 20, 2019
Read more

🦠 "Courage is knowing it might hurt, and doing it anyway. Stupidity is the same. That's why life is hard." - Jeremy Goldberg

Helllllloooo friends!

It's been a while! Apologies for the long break from these emails. Or maybe you liked the long break. Oh well. Anyway! I went on vacation and started doing my first workshops at , and am finally getting back into the swing of things. Onward!     Phew, I have had a busy couple of weeks! After my vacation, I got back to real life and got to work making sure I knew the curriculum for my first workshops with React Training. As of about 2 hours ago, I just finished my second one! Teaching is so interesting. You think you know a topic, but you really learn it that much deeper when you tell others about it and try to get them to understand it as you do. Students so far in both workshops have come up with questions that I wouldn't have expected, and answering those questions is a great learning experience for everyone! Anyway, I've really been enjoying teaching so far, and I'm excited for more. That being said, if you're interested in joining in one of my workshops, in November with the company, or you can ask your boss to bring us in and teach ya, or you could just... .   Last time, I had you write a square root function! , , , , , and  did a great job answering! This week's question: Example: countEvenSequences(3) > 13 // All possible sequences of length 3 will be (1, 1, 2), (1, 3, 2), // (3, 1, 2), (3, 3, 2), (1, 2, 1), (1, 2, 3), (3, 2, 1), (3, 2, 3), // (2, 1, 1), (2, 1, 3), (2, 3, 1), (2, 3, 3) and (2, 2, 2).     Why don't people in Athens wake up early? Because dawn is tough on Greece!   That's all for now, folks! Have a great week. Be safe, make good choices, and try to reduce your screen time to protect yourself from eye strain. cassidoo |  | | | 
#113
October 9, 2019
Read more

📚 "If you don't stick to your values when they're being tested, they're not values. They're hobbies." - Jon Stewart

Hello friends!

I hope you're having a great week so far. Mine has been fun (week 2 on the new job with React Training!), and I'm excited for the fall weather that's slowly but surely approaching. Onwards!
 

Web links of the week

Moving Your JavaScript Development To Bash On Windows
React's useEffect and useRef Explained for Mortals
How to learn D3.js
Relay 6.0 released
 

Something that interested me this week

One of my current collab projects that's out right now is DSA Astrolokeys, a cute, pastel keycap set! I've been working on it with @sailorhg for a few months now, and we're really excited to finally have it live and available for people to get and stick on their keyboards.
We recently stuck it on Product Hunt, too! Please upvote (starting tomorrow, Friday), share, and help get it out there! <3
 

Interview question of the week

Last week, I had you put together a function that dealt with jumping across a list in minimal steps. Nice work Lauren, William, Stuart, Micah, Ilya, Jehiel, Pablo, Jonathan, Joan, and Vina!

This week's question:
Implement a square root function (without using an exponential function).
 

Cool things from around the internet

DIY Camera Dolly
TMO50 with GMK Camping
This Is the Future of Libraries in the Digital Age​
 

Joke

Why should you never eat a clock?
It's too time-consuming.
 
That's all for now, folks! Have a great week. Be safe, make good choices, and sit up straight.

Special thanks to Gabor and Stephen for supporting my Patreon and this newsletter!

cassidoo

website | twitter | patreon | github | codepen
#112
September 19, 2019
Read more

😻 "Wisdom is the reward you get for a lifetime of listening when you'd have preferred to talk." - Doug Larson

Hello friends!

I hope you've had a great week so far. Mine's been great, I started my new job yesterday at ! Let's boogie.     As I mentioned in the intro, I started my new job this week! It's been interesting so far. The guys at do some amazing open source work (like and ), and teach some really cool workshops and courses offline and online. I'm excited to have a role that covers both teaching and coding, and onboarding so far has been a fun learning curve! While I was in between gigs for the past week, I put together a couple things I was proud of: I made , a small CSS preprocessor for shorthand for width and height, and I submitted into . Check 'em out!   Last week, I asked you a sorting question given a custom alphabet! , , , , , , and had great answers! This week's question: Example: miniJump([1, 3, 5, 8, 9, 2, 6, 7, 6, 8, 9]) > 3 // 1-> 3 -> 8 ->9, so here the first element is 1, so can only go to 3. Second element is 3, so can make at most 3 steps (to 5 or 8 or 9). If you encounter a 0 in the array, just return -1.     I accidentally swallowed a bunch of Scrabble tiles. My next trip to the bathroom could spell disaster.   That's all for now, folks! Have a great rest of your week. Be safe, make good choices, and be kind! cassidoo |  | |  |
#111
September 11, 2019
Read more

👢 "There is only one success - to be able to spend your life in your own way." - Christopher Morley

Hello friends!

I hope you had a great week (and long weekend, for you Americans and Canadians)! Let's boogie.     I have news! I am switching jobs! Last week was my last one at . The team is awesome and I will miss working with them and building on a product I love, but I'm moving on to a really exciting new opportunity! I'm going to be working with ! They're the folks behind React Router, Reach UI, Unpkg, and a ton of other software/libraries you have probably used. I'm really excited to be going on tour with them teaching workshops around the country (and maybe internationally?), helping out more on open source, and other cool projects.   We had TONS of replies to last week's question about "special bags" that could hold a certain amount of weight. Nice work , , , , , , , , , , , , , and ! This week's question: Example: isSortedBy(['cc', 'cb', 'bb', 'ac'], ['c', 'b', 'a']) > true   (little plug here for a nice article Jacob Herrington wrote about a podcast I was on!)   My husband says I treat him like a god. Every meal I make for him is a burnt offering.   cassidoo |  | |
#110
September 4, 2019
Read more

🥽 "We didn't realize we were making memories, we just knew we were having fun." - Winnie the Pooh

Hello friends!

I hope you've had a great week! Mine last week was somewhat stressful (hence the late newsletter, sorry about that), but we all need a little stress sometimes :) Onward!     I'm writing to you from NYC! One of my exciting projects that I'm going to be starting is helping out with their newsletter. They liked the format of this one (heyo) and want to bring more interesting content (and humor!) to their readers, and I'm super pumped to help out. I think it is going to also be a weekly newsletter, maybe bi-weekly. We'll be dishing up interesting links from around the internet, neat questions from Stack Exchange, and of course, a healthy amount of good humor. :)   Last time, I asked you about repeated substrings! , , , , , and submitted some great answers! This week's question: Examples: > specialBag([1,1,3,2]) > 3 bags >      What did my friend say when they heard me say that I play both World of Warcraft and League of Legends? Lol wow   That's all for now, folks! Have a great week. Be safe, make good choices, and keep a band-aid with you, just in case. cassidoo |  | |
#109
August 27, 2019
Read more

🎓 "Never discourage anyone who continually makes progress, no matter how slow" - Plato

Hello friends!

I hope you've had a great week so far! I'm going to be speaking at the  for the first time tomorrow and I'm super excited to be there. Until then, let's surf!     This past week at work we released a TON of new things! My project in particular was the complete conversion of profile pages on CodePen to React, our designer Klare designed for the site, one of our devs Shaw launched , and, well...  now exists. Now that all of these things are settled at once, the whole team is going to be working on some projects together. Oftentimes (especially on remote teams) it's hard to not feel siloed when you are working on your own little section of a larger project, so it'll be a fun change to get to work alongside everyone over the next few weeks as we launch more things! Also, in case you missed it, Kent C Dodds launched his podcast series (and you'll find ), and I was also on the !   We had tons of responses to the question last week about validating a triangle! Props to , , , , , , , and ! This week's question: Example: > repeatedSubstring('abcd', ') > 3 // When you repeat n 3 times, it becomes 'abcdabcdabcd', and m isn't a substring of n when it's repeated less than 3 times >  > -1     I just read a book on how to survive falling from a staircase. It's a step-by-step guide!   That's all for now, friends! Have a great week. Be safe, make good choices, and don't forget your charger at home! cassidoo |  | |
#108
August 14, 2019
Read more

🐢 "Choose people who lift you up." - Michelle Obama

Hello my friends!

Phew, another week has raced by and we're still on the internet. Let's talk about it!     I've started doing something over the past few weeks that is incredibly uncharacteristic of me: I've been going to the gym! For real though, I haven't regularly worked out... ever? With the exception of gym classes in school. It's been tough, this is week 3 of it, and I'm definitely still getting used to the routine. My husband and my friend have been great as both workout and accountability buddies. We've been going before work every other day, and even after just a few weeks, it's really made a solid difference! I can tell that my posture is better, I'm stronger, and I'm also just better at drinking water and eating well. It's really, really hard to get into this routine and stick with it, but I'm getting more and more motivated as we go. Anyway, the reason why I bring this up is: If you aren't sure about doing the gym thing, all I can say is that if I can do it, can. Get started!!   Last week I had you look into train schedules and determining a number of train tracks based on that schedule. Stuart to that! This week's question: > validTriangle(60, 80, 40) > true     I called in to work and I said "I can't come in today, I have a wee cough." My boss answered, "You have a wee cough?" And I replied, "Wow, thanks boss, see you next Wednesday!"   That's all for now folks, have a great rest of your week! Be safe, make good choices, and support artists. cassidoo |  | |
#107
August 7, 2019
Read more

👛 "You can't go back and change the beginning, but you can start where you are and change the ending." - C.S. Lewis

Hello friends!

Phew, I had such a busy couple weeks that I didn't end up sending this out last week. My apologies! Life happens :)  Anyway, I hope you had a swell couple of weeks, and have been enjoying your summer. Let's boogie.   I threw some extras in here to make up for last week :)   This past weekend was the Seattle Mechanical Keyboard meetup! Those of you who have been reading this a while know that it's a huge event every year, and this year did not disappoint. We had over 300 people show up, with over 500 keyboards present! It was a blast. I was the emcee for the event and got to chat with some awesome folks in the community, as well as tell jokes and give away raffle prizes. Here's of some of the pictures I took! I also had a bit of an explosive Twitter engagement over the past couple weeks! I made a couple videos and , and they both went viral. My mentions and my follower count has been nuts, to say the least. It's been fun getting to see and chat with so many new people, but it's also been kind of exhausting! I went from 23k followers this past Tuesday to about 38k followers as of my writing this sentence. Phew!   Last time, I asked you to write a function that returned all possible palindromes that could be formed of a given string! Stuart came up with :) This week's question: Example: let arrivals = [9:00, 9:40, 9:50, 11:00, 15:00, 18:00] let departures = [9:10, 12:00, 11:20, 11:30, 19:00, 20:00] minTracks(arrivals, departures) > 3 // There are at most three trains present at a time, between 11:00 to 11:20     Thanks to Jalen for this one!! Why do ships in the Norwegian navy have barcodes painted on their sides? So when they get back to port they can Scandinavian.   That's all for now, folks! Have a great week. Be safe, make good choices, and enjoy the sunshine. cassidoo |  | |
#106
July 29, 2019
Read more

🔆 "Sometimes you will never know the value of a moment until it becomes a memory." - Dr. Seuss.

Hello friends!

I hope you had a great week! I meant to send this out yesterday but I made the mistake of going to the gym instead and now I'm just sore AND late. Anyway, onwards!
 

Web links of the week

React Icons Gets You Access to Hundreds of Open Source Icons
Perl out Loud - Emily Shea
The intersection of performance and accessibility
 

Something that interested me this week

This past week was a pretty active internet week for me! I had two of my tweets go pretty popular (10x engineer and updating legacy codebases), and I updated my personal website! I haven't touched that thing in ages, so I'm glad it's finally new and fresh and up to date.
One of the links on there is a new one for me, it's actually a Patreon page that I started. I haven't done a ton with that yet (no social media or anything), but I'm excited to see where it goes and I'm pumped to start a little community there as I post about fun things I'm working on. I set up a Discord channel to be connected to it too, for scheduling practice interviews, for resume reviews, for working on projects, and just to hang out! If you are so inclined, I'd love your support, but no pressure <3
 

Interview question of the week

Last week I had you write a simplified regex matcher! Sophie pushed out her very clean solution here, Dimitris did his here, and Stuart gave a few different and modified answers in this thread!

This week's question:
Write a function that takes in a string and returns all palindromes that can be formed with that string if you rearrange the letters.
 

Cool things from around the internet

How to make sushi
20 year timelapse of Amazon.com (1999-2019)
Foggy Dew (Irish Bouzouki)
GMK Minimal on a DC60
 

Joke

Astronomers got tired watching the moon go around the earth every 24 hours. They decided to call it a day.

That's all for now folks! Have a great end to your week. Be safe, make good choices, and get your potassium in so your muscles don't cramp.

cassidoo
#105
July 17, 2019
Read more

🆙 "I think it's always a good move to listen to that inner voice, if it doesn't lead to a crime." - Lisa Kudrow

Hello friends!

I hope you had a great week. Mine was packed with work, helping friends move, going to the arcade, going to the gym for the first time in......... a long time, and checking out a food fair in Seattle (shout out to Christina who randomly approached me there and said she liked this newsletter, hi Christina)! Let's boogie!
    This past weekend we went to the arcade and spent a LONG time playing games and watching people absolutely crush it at DDR and Pump it Up! I gotta say though, the game that I discovered and stole my heart was an old one called . I played it for probably way too long, but I loved it! It reminds me a lot of those matching color games like Bejeweled and Candy Crush, while also having the digging element of Dig Dug, also while being timed. It was a really good time and it made me want to build my own arcade machine just to play it! Until then though, I'll be trying out the online and phone versions. :)   This past week's question was a bit harder for you folks! I had to get sum combinations from dice with a random number of faces. and did a great job with their solutions! This week's question is one of my favorites to give in technical interviews: For example: doesMatch(“abc”, “a*g*b.”) > true     How many apples grow on a tree? All of them!   That's all for now folks! Have a great week. Be safe, make good choices, and look away from your screens every 20 minutes.
#104
July 9, 2019
Read more

🇺🇸 "You don't have to be great to start, but you have to start to be great." - Zig Ziglar

Hello friends!

Happy 4th of July! Special day for Americans, just a Wednesday for everyone else :)     We saw Pentatonix in concert yesterday!! It was awesome. I've always been a big acapella fan and this concert filled my eyes and ears with BEAUTY. They were awesome live! If you haven't heard them before, of theirs.   Last week, I gave you a non-coding question and asked you to explain the difference between high- and low-level programming languages. and came up with great responses! This week's question: Example: > diceCombos(n = 2, f = 4, x = 4) > 3 // (1, 3), (2, 2), (3, 1)     I signed up for my company's 401k! Unfortunately, though, I don't think I can run that far.   That's all for now folks! Have a great week. Be safe, make good choices, and don't blow anything up.
#103
July 4, 2019
Read more

🌂 "A great many people think they are thinking when they are merely rearranging their prejudices." - William James

Hey friends!

Phew, I just got back from a long week of traveling. Let's boogie!     I had a speaking gauntlet of a week this past week! On Tuesday I flew in to Denver and spoke at about moving to React at CodePen, then on Wednesday I spoke at Flatiron School Denver about tech career stuff, then on Thursday I spoke at about building CodePen's Babel processor, and then on Friday I spoke at in Chicago and spoke again about moving to React at CodePen (with  and )! It was exhausting, but a really fun time. These events were incredibly well-organized and I genuinely enjoyed chatting with all the people I met! Now, I get to make like an AJAX request and REST! Also, later this week I'll be on talking about the latest web dev things and about the conferences, if you'd like to tune in. I think the episode comes out on Thursday or Friday!   Last time, I had you write a HEX to RGB converter! We had some great submissions, both from people who made UIs and who didn't.  - Dimitris ‏made - Garth deployed - Mike made a repo of - Stuart made - Kyle penned - Ian posted Really great job everyone, this one was really fun to see people try out!! This week's question is a non-coding question:   (if you feel this way about this one lmk, very open to feedback!)   A pirate went to the doctor and said, "I have moles on me back!" The doctor: "It's okay cap'n, they're benign." Pirate: "Count again, I think thar be ten!"   That's all for now folks! Have a great week. Be safe, make good choices, and eat your leftovers.
#102
June 24, 2019
Read more

🚓 "It always seems impossible until it's done." - Nelson Mandela

Hey friends!

I hope your week started off well! Let's dive in.     I've been learning a ton about monorepos for work! The tool I've been messing with the most is . It's been pretty interesting and I'm hoping to apply it to side projects in the future. Also, I made a and stuck on it that I tweeted about a while back, and have made a grand total of $6, so as you can imagine, I'll be retiring any day now.   Last week, I had you find the maximum range between two elements in an integer array! Here are all of the great responses:  (...sometimes I'm not feeling creative when I'm typing these things out, heh) This week's question: Bonus, make a pretty UI for it too <3      Why does Waldo wear striped clothes? Because he doesn’t want to be spotted!   That's all for now! Have a great week. Be safe, make good choices, and be concise.
#101
June 11, 2019
Read more

📀 "There's a million simple solutions, they just never work together." - Anonymous

Hello friends!

I hope you had a great week! I'm a little tardy on this myself after a busy one. Onwards!     I got a new desktop computer this past week! Well, "new" as in I bought part of it used from someone and added other stuff to it. So it's new to me. Anyway! I'm super excited about it! I haven't had a desktop in ages, and I'm really excited to use it for live-streaming, 3D modeling, and of course, playing games. If you're curious, here's the specs for it: CPU: Intel - Core i7-7700K 4.2 GHz Quad-Core Processor CPU Cooler: Noctua - NH-U14S 82.52 CFM CPU Cooler Motherboard: Asus - ROG STRIX Z270i GAMING Mini ITX LGA1151 Motherboard Memory: Corsair - Vengeance LPX 16 GB DDR4-3200 Memory CMK16GX4M2D3200C16 Storage: Samsung - 960 EVO 500 GB M.2-2280 SSD Video Card: Asus - GeForce GTX 1080 Ti Power Supply: SeaSonic - ss-850km3 Gold 850 W 80+ Gold Certified Optical Drive: Pioneer - BDR-211UBK Blu-Ray/DVD/CD Writer (because I still have CDs) Case Fan: Noctua - NF-A14 FLX 68 CFM 140 mm Fan   Last week, I had you implement integer division without / or %. We had great answers from Garth in Perl and Crystal ( and ), from Stuart , from Sophie , from Mike , and from Kyle ! So many different languages! I absolutely loved seeing the variety. This week's question: Examples: > maxRange([2,2,1,3]) > 2 > ([0]) > 0 ([4,3,5,7,1,7,7,6]) > 6     When I read the letters H-I in the alphabet, I thought I made a friend! But then I read the next two letters.   That's all for now, folks! Have a great rest of your week. Be safe, make good choices, and proofread.
#100
June 4, 2019
Read more

😋 "If you are not criticized, you may not be doing much." - D.H. Rumsfeld

'Ello friends!

I'm back from a fun trip to London! I hope you Americans had a great Memorial Day weekend. Onwards!     This past week I spoke at in London! I talked about building the Babel 7 processor for CodePen. It was a great event, and I really enjoyed getting to know the people there! if you'd like to check them out.   Last week I had you the last non-repeating character in a given string. , ! Every word in that sentence is a different one. :) This week's question:     I WRITE MY JOKES IN CAPITALS THIS ONE WAS WRITTEN IN LONDON (you should know that I waited for weeks until my trip to actually write this one down so it would be true)   That's all for now, folks! Have a great week. Be safe, make good choices, and make puns.
#99
May 27, 2019
Read more

😳 "When in doubt, tell the truth." - Mark Twain

Hello friends!

I'm writing this on my way to speak at in London! Cheerio!     Well, my phone blew up this past week. went viral! I made the emoji in the tweet as just a fun thing to add to Slack, and lo and behold, turns out a *lot* of people wanted to do the same. You really learn about the power of social media when stuff like this happens. Distant family, random siblings of high school friends, and old classmates have been messaging me out of the blue because of this tweet! Granted, the annoying side of it is that *so many* reposts of my tweet have been made. A bunch of Instagram accounts with millions of followers reposted it (most of the time without credit, frustratingly), and it made it to the front page of /r/me_irl and /r/memes on Reddit, too. It's been a fun few days, but I am definitely looking forward to getting my notifications back to normal! Several people have mentioned submitting the emoji to the Unicode Consortium to make it official. I think that would be super fun, but I'm not fully sure how to go about it (or if it would be more work than it is worth). If any of you out there know about the process and/or want to help me out submitting it, that could be a fun mini side project!   We had a bunch of submissions this past week for summing numbers in arrays! , , , , and are some great solutions in a variety of languages!   This week's question: Example: > nonRepeat('candy canes do taste yummy') > u     What do you call a burning jacket? A blazer!   That's all for now folks! Have a good week. Be safe, make good choices, and don't spoil TV shows for your friends.
#98
May 20, 2019
Read more

😴 "The more tired you are, the more susceptible you become to short-term thinking." - Brian Norgard

Hello friends!

I hope you had a great week! I went to Las Vegas for the first time for a bachelorette party and won $11. It was very exciting. But not as exciting as the world of web development.     This past week I went to a developer relations meetup! It was a fun time, a bunch of people were in town for the Microsoft Build conference. Plus, I got to see some old friends from my dev evangelism days, and some people I had only known on the internet before! Also my cousin Samantha (also a dev) and I , which is always a good time. :)    Last week, I had you calculate the angles in an n pointed star. sent in an efficient Java solution! private static double starAngles(int n) {   return (double)(n - 4) * 180 / n; } This week's question: Examples: oddSum([9, 14, 6, 2, 11], [8, 4, 7, 20]) > [9, 20], [14, 7], [11,8] oddSum([2, 4, 6, 8], [10, 12, 14]) > null (or whatever falsy value you prefer)     What do I know about bonsai trees?  Very little.   That's all for now, folks! Have a great week. Be safe, make good choices, and don't litter.
#97
May 13, 2019
Read more

🦞 "Loneliness has more to do with lack of purpose than lack of company" - Neil T Stacey

Hey friends!

I hope you had a great week! I myself finally that I got ages ago. It's HUGE and I'm so happy with it! Anyway, onwards!     This past week a feature I led at CodePen was finally released, ! Before, the mobile editor was a completely separate section of the codebase, and only had the ability to toggle between code panels and zoom in and out. Now, the editor works at any size (wide, short, thin, and tall), and includes the same zoom ability, in addition to the console, the ability to share to different platforms, view and add comments, add to and create collections, and moooore. I'm super happy with the release, and I hope you check it out and enjoy!   Last week I had you make a "click outside detector" in whatever language you wanted. Rebecca wrote an awesome , and Stuart made a ! This week's question: Hint: The sum of the angles at each point of a 5 pointed star is 180 degrees, and at a 6 pointed is 360 degrees.     A horse walks into a bar. "Hey," the bartender says. "Sure," the horse replies.   That's all for now, folks! Have a good week. Be safe, make good choices, and don't pretend to like things you don't.
#96
May 6, 2019
Read more

🧚‍♀️"Adversity, everyone gets them. But winners, they overcome them." -  Edgar K. Tham

Hello friends!

I hope you had a great week! I've personally been cleaning up my home a (building on the theme from last week) and have been pretty happy with the results. Anyway, onwards!   (shameless plug)   In addition to cleaning a bunch this week, I've also re-upped my Skillshare subscription and have been taking several classes there. I've been trying to get better at design in general (mostly for laser cutting purposes), and I've been pretty happy with the short courses they have on the subject! I promise this isn't an ad. Although if you wanted to use , I wouldn't be opposed... :)   Last week, I had you build something using the Swatch beat time! Andrew built (I didn't know what Spring Boot was, so that was cool to see), and Stuart built using CodePen for the first time (woo hoo)! This week's question:     I've been trying to get my husband to read Pride & Prejudice. Whenever I do, he just says, "I’m too good for it, and I have a feeling that it’ll try to lecture me."   That's all for now folks! Have a good week! Be safe, make good choices, and learn something fun.
#95
April 30, 2019
Read more

🍂 "Time is a great teacher, but unfortunately it kills all its students." - Hector Berlioz

Hello friends!

I hope you had a great week! To those who celebrate it, I hope you had a wonderful Easter holiday. Ours was great, we had a really good message at church (happy to share it with anyone who asks). Anyway, back to the web!     This past week I designed and laser cut for myself! I've been trying to come up with a good way to store my keyboards without taking up too much space, and I'm really happy with the result. We got new standing desks in our home office too, so between the stand, the desks, and getting rid of a bunch of old things we don't use, our office is looking nice and organized. It's SO great for my productivity. Who knew that a clean, organized space would help get work done?    Last week, I had you sort strings in a given alphabetical order. Dimitris wrote ! This week's question:     I always thought a snail would move faster without its shell. Turns out it only makes them more sluggish.   That's all for now, folks! Have a good week. Be safe, make good choices, and clean up your desk.
#94
April 23, 2019
Read more

🔙 "They say that time changes things, but you actually have to change them yourself." - Andy Warhol

Hellllooo friends!

Just got back from a vacation to Hong Kong and Korea! It was super fun and packed full of sightseeing and eating and visiting family. Anyway, onwards!     Thanks so much for all of your entries in the raffle last time! Congrats to Krish, Maria, Sarah, Bryan, and Kevin! The past couple weeks have been a huge whirlwind. The first few days of my vacation I was in Hong Kong with my husband and brother-in-law, where we ate all over the place and explored some cool markets. The next chunk was spent touring around South Korea visiting family, and it was awesome. We got to do karaoke a couple times, checked out a PC gaming café (which is a genius concept, by the way), hiked on a mountain and along a beach, and ate . It was my first time in both China and Korea, and it was a really unique experience. I admit I'm still getting over the jet lag, but I'm getting there! Also, of course, I bought some mechanical keyboard parts and dozens of face masks, so I'm set to live my best life for a while 😉 Now that I'm back, I'm ready to get back in the swing of things at CodePen, build some keyboards, and laser cut some projects!   Last week, I had you find parenthesis depths in a string! Wesley wrote up in Rust, Michael wrote , Stuart , and Dimitris ! This week's question: Example: alphSort(') > for green best are learning switches typing the     How do you find Will Smith in the snow? You look for the fresh prints!   That's all for now folks! Have a good week. Be safe, make good choices, and don't be a jerk.
#93
April 15, 2019
Read more

2️⃣ "Real love stories never have endings." - Richard Bach

Hello my lovelies!

This is a very exciting newsletter for me to write, because it's the 2 year anniversary of this thing! Wow! It's kind of mind-blowing, I feel like I started this just a short while ago. Time flies when you're having fun!

Because it's a little 2 year party over here, I have some giveaways for y'all! I'll post those below. Until then, the usual!
 

Web links of the week

Why browsers think "chucknorris" is a color
Building a Real-time Collaborative Beatbox with React & GraphQL
Create a Connect Four AI using Python
The Future of Cross-Platform is Native
 

Something that interested me this week

I've got some exciting giveaways for you folks as a big thank you for following along with me for so long! CodePen and Massdrop have very generously offered some things for you folks because they are awesome and love all things code and keyboards. They are the best.

CodePen is giving away 3 t-shirts in the size of your choosing! Get CodePen Pro.
Massdrop is giving away a $50 gift card! Join Massdrop!

Along with these lovely folks, I'm also giving y'all free access to my JavaScript and React Udemy course, and I'll also personally be sending out a free Google Home to a lucky person too!

But how do you get these great things? Fill out this form here! I'll be running a random number generator to determine the recipients.

Also, quick side note, I'm working on making a new mechanical keyboard switch. If you're interested, mind filling out this other form?

Thank you again for being here. It really means a lot to me. It makes my day so much better to hear from you and see tweets and messages from people that enjoy reading this.
 

Interview question of the week

This past week, I had you do some math by finding trailing zeros in a base 16 factorial. We got some great answers from Kyle, Dimitris (who did it twice!!), Ethan, Mike, and Stuart!

This week's question:
Find and return the maximum depth of parenthesis given a string. If the parenthesis are unbalanced, return -1.

Example:
parenDepth("( a((b)) ((c)d) )")
> 3
parenDepth("b) (c) ()")
> -1
parenDepth("who am I and where do I belong")
> 0
 

Cool things from around the internet

Tetris-themed orthogonal keyboard
Game Level Design Resources
Changing Perceptions of Portion Size Through Tableware Design
Making The Biggest Open Wind Tunnel
 

Joke

If the moon landing was real, then how come I still see it in the sky??
 
That's all for now folks! Have a great week, and thank you again for sticking around. Be safe, make good choices, and don't fall for any April Fools' jokes!

cassidoo
#92
April 1, 2019
Read more

🚭 "Fear is the devil's greatest illusion." - R.M. Drake

Hey friends!

Hope you've had a great week so far! I've had a fun one, going to a couple meetups and working on some new things at CodePen. Let's boogie!       We had a ton of responses this week! , , , , , , , , and  all did a great job finding numbers that were perfect squares and cubes. This week's question: trailing(6) > 1 // 6! = 720 (base 10) = 2D0 (base 16)     One of my friends gets paid less than minimum wage for watering plants. He's a pour guy.   That's all for this week! Be safe, make good choices, and cut your nails.
#91
March 27, 2019
Read more

🎯 "The key is not to prioritize what's on your schedule, but to schedule your priorities." - Stephen Covey

Hola, friends!

I hope your week has been going great so far! I myself just got back from Spain and am very jetlagged (hence why this is being sent on a Wednesday evening instead of early Monday morning). Vámonos!     Like I mentioned above, I was in Spain this past week! I was there to speak at , and it was a blast. I got to meet some wonderful people who I had only known via Twitter (and CodePen!) before, and spoke a lot of Spanglish. I did a talk on making art with CSS (similar to the one I did at Generate Conf last September), and live-coded making this . I'm hoping talks will be up soon (probably on ), though you can probably get the gist of it from seeing the Pen there! Overall, it was a super well-organized event, and I'll definitely be applying to go back!   This past week, Daniel and Stuart to the question of printing a spiral over a 2D matrix! This week's question: Example: squareCubeNums(100) > 1, 64 Bonus: Try to do this in less than 10 lines of code!     I like to play chess with the old folks in the park. I admit it's hard to find 32 of them, though.   That's all for now folks! Hope you have a great rest of your week. Be safe, make good choices, and remember to check in with your family now and then.
#90
March 20, 2019
Read more

🌷 "The days are long enough for those who use them." - Leonardo Da Vinci

Hey friends!

Wow, if I'm being honest, I totally and completely forgot to send a newsletter last week. Oops. I'm sorry about that! Hopefully it got you closer to inbox 0! Let's boogie.     This week I've been prepping to go to Spain! I'm speaking at this week about creative coding and making art with CSS, and I'm super pumped. It looks like I'm one of the few English speaking presenters at the event, so it might be a Spanglish talk. We'll see how it goes! In other news, this past week we released a feature I worked really hard on at CodePen: a ! Under the hood there's a TON of changes, but the biggest user-facing one for you is that you can use a bunch of really great futuristic JavaScript features right out of the box. If you test it out, please share what you make, I'd love to see it!   Last time around I had you map digits on a dial pad to a string. and had great responses! It was a challenging question, kudos guys. :) This week's question: Example: arr =  [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12] > printSpiral(arr) > 1,2,3,4,8,12,11,10,9,5,6,7     Who's the coolest doctor in the hospital? The hip doctor!   That's all for now, folks! Hope you have a good week. Be safe, make good choices, and wash your dishes.
#89
March 11, 2019
Read more

📣 "I think the reason I was successful is that I was never cynical." - Carol Burnett

Hey friends!

I hope your week was smashing. Mine was super productive! Let's ride.     This past week was a good one for me. I got some laser cutting done, we released some new stuff at CodePen, I got my inbox down to less than 10 (!!) emails, I got to see some friends from out of town, I cleaned a lot around the house, and I started a couple good books. I admit I've been fairly stressed out in weeks prior to this one, so it was nice to clear my head and get a ton of tasks done. It really is a domino effect, once you get one big thing done, it's like you hunger for finishing more and more! Moral of the story: finish that thing!   Last week I had y'all remove an element from an array to make its sum odd, and we got a bunch of great responses! Nice work , , , and as always, ! It was fun seeing this problem solved in so many different languages! Michael also emailed his in: def removeForOdd(arr)    first_odd =-1    sum = 0    arr.each_index { |x|       sum += arr[x]       # next loop if we found the odd already       next if first_odd >= 0       first_odd = x if arr[x].odd?    }    return -1 if sum.odd?    return -1 if first_odd == -1 # no odds    # if the two above don’t return then    # we are even and have identified the first    # odd so return that index    first_odd end This week's question:   We all just want to belong. But some of us are too short.   That's all for now, folks! Have a great week. Be safe, make good choices, and respond to those emails you've been putting off!
#88
February 24, 2019
Read more

📕 "The darker the night, the brighter the stars." - Fyodor Dostoevsky

Hello friends!

Hope you're having a good week so far! I've been dealing with some funky bugs this week, which have given me plenty of highs and lows. Onward!   (this isn't web-y but I thought it was cool)   Lately, I've been hand-writing out my notes and tasks more and more. It's been really helping me stay on track, and remember what I need to do. In doing this, I realized that most of my notebooks are kind of flimsy, and I have to go through them to see if I need to keep any sheets of paper or if I should just recycle them after I use them up. I wanted to get some kind of high-quality binder, but they tend to be pretty expensive. So, after some brainstorming, I decided to make myself a binder with my Dremel laser cutter out of leather! After scribbling out a bunch of math for the sizes and widths of everything (some of you might remember I was on Twitter), I and I am SO happy with ! The binder can fit any standard loose-leaf paper, so I can add paper as I go and recycle sheets I no longer need over time. Plus, it's really easily rollable, so I've been able to roll it up in my bags and carry it easily without worrying about if it bends too much. It was a really fun project! I'm considering putting it on Etsy or something for those who want to get one of their own. If you'd be interested, let me know!    Last week, I had you make a palindrome! , , and gave great answers. :) This week's question: Example: > removeForOdd([2,4,6,7,8]) > -1 > removeForOdd([4,4,4]) > -1 > 0     I can't believe I got fired from the calendar factory. All I did was take a day off!   That's all for now, folks! Have a good week. Be safe, make good choices, and don't be afraid of difficult conversations.
#87
February 19, 2019
Read more

😻 "One day, in retrospect, the years of struggle will strike you as the most beautiful." - Sigmund Freud

Hey friends!

Sorry for being little late this week! The big winter storm that hit Seattle has kept me indoors so much that I've needed to take breaks from the internet. Anyway, onwards!     Honestly, it hasn't been a very active week. Since the snowstorm in Seattle have left us mostly homebound, I've been mostly working and watching cars unsuccessfully attempt to go up the icy hill by my house (which has been both funny and sad). I'm sure I'll have a more exciting update next week, heh. Stay warm!   Last week I had you explain functional programming! Kyle gave . This week's question: Example: makeAPal('hi') > 1 // for ihi or hih makeAPal('xx') > 0     My husband is fed up of my constant wordplay jokes, so I asked him, "How can I stop my addiction?" "Whatever means necessary," he replied. ⁠ "No it doesn't." I said.   That's all for now folks! Have a good week. Be safe, make good choices, and do your dishes.
#86
February 12, 2019
Read more

🐾 "Normal is not something to aspire to, it's something to get away from." - Jodie Foster

Hey friends!

I am writing to you from my garage, where I am using my sister's and my !! I have had some tough problems to solve at work, and boy, laser cutting at the end of the day is such a treat. Let's get scootin!   It was a week of releases. Surprise, you're behind!   Like I mentioned in the intro, I'm laser cutting as we speak! I finally got a bunch of materials to mess around with, and my first little project was earlier this week! Currently I'm making some coasters as a gift for a friend, and I'm planning on making some keyboard parts later this week. It's a BLAST. I'm thinking about starting an Etsy shop or something so I can have more excuses to use it, otherwise my house is going to be so full of small wood and plastic and leather parts (not that that's a bad thing). That being said, if you yourself want something laser cut, feel free to reply to this or ping me on Twitter, maybe we can work something out!   Last week I had you validate a "Boggle" puzzle, and ! This week's question:      I don't mean to be rude, but I found the Super Bowl to be super boring. No offense.   Alright friends, that's all for now! Have a great week. Be safe, make good choices, and fold your socks.
#85
February 4, 2019
Read more

🐲"True wisdom is knowing what you don’t know" - Confucius

Hello friends!

I hope you had a great week. I had an incredibly busy one, but luckily the work done last week is starting to pay off already. Let's get scootin!     Honestly, it was such a busy week that I didn't do much "extracurricular" work/reading/etc. I'm hoping that the coming weeks are not nearly as busy as this past one! That being said, I discovered of multiple people producing music based on a single clip, and it was very cool to see how that worked.    We had a bunch of responses this week! I had you check if a string is repeated, and we had answers , , , and of course, in . I hope you had fun with it! This week's question: Example: w = 'skated'; q = 'feast'; grid[][] = {   "axmy",   "bgdf",   "xtet",   "raks" }; > true > false     My husband kicked me out of the house for my bad Arnold Schwarzenegger impressions. I'll be returning!   That's all for this week friends, have a good one. Be safe, make good choices, and water your plants.
#84
January 28, 2019
Read more

☝️"Tell me, what is it you plan to do with your one wild and precious life?" - Mary Oliver

Hello friends,

I hope you had a good long weekend (to those of you in the US) and an enjoyable week! I finished my first projects for grad school this past week, and whew, doing homework is a very different mindset that I haven't used in a long time! Anyway, let's get crackin.     The world lost a wonderful person this week. I found out on Thursday that my undergrad advisor Gloria Cain passed away, and I was heartbroken. Gloria was a funny, smart, and kind person. She was a parent to the computer science kids when we didn't have one to go to. She helped her students accomplish so much, from getting into classes to earning scholarships to interviewing for jobs. Several of us would go hang out by her office regularly just to chat and enjoy her hilarious, quirky sense of humor. I know for a fact I wouldn't be where I am today without Gloria Cain. She was a friend, a mentor, a helper, and a joy to be around. She retired my senior year of college, and to thank her. The world would be a better place with more Gloria Cains in it. I enjoyed keeping up with her after her retirement and my graduation, and  "A friend is one of the nicest things you can have and one of the best things you can be." - Winnie The Pooh   Last week, I had you return all the numbers less than n that had only the digits 1 or 5 in them. Check out  answers! This week's question: Example: repeat('pi', 'pipipipi') > 4 repeat('danger', 'cassidy') > -1     What do you call a person who never farts in public? A private tutor!   That's all for now, have a great week. Be safe, make good choices, and be a friend.
#83
January 21, 2019
Read more

😱"We cannot solve our problems with the same thinking we used when we created them." - Albert Einstein

Hello, world!

I hope you had a great week! Mine was pretty stressful (big project at work, plus the start of grad classes), but really good. Let's get scootin!     I started my first courses for my master's degree this week! My favorite thing I've learned about so far are . It's an aptitude test from the 1930s that is completely visual (no verbal or reading elements are in it), and is pretty fun to try out. The first part of the course is called Computational Psychometrics, which is the design of computational agents that can take the same kind of tests that humans do when they are tested for intelligence or knowledge or aptitude. So, you guessed it: My first homework assignment is to build an AI agent that can solve a set of those Raven's problems! I'm terrified and not entirely sure how to start (they're all SO different), but luckily I have a few more lectures to go through that hopefully will help me through.   Last week I asked you some questions about pointers! with some solid answers. This week's question: Example: oneOrFive(20) > 1, 5, 11, 15     A word of advice to you: never date a tennis player. Love means nothing to them!   That's all for now folks, have a good week! Be safe, make good choices, and donate those clothes you haven't worn in a while.
#82
January 13, 2019
Read more

🎇"Cowards never start, weak never finish, strong never quit." - CJ Chan

Hi there!

Happy 2019! I hope you had a great start to the year. Let's keep it going!      Phew, this was my last week before starting my master's program in computer science. Between class registration and the anticipation, I admit I'm pretty stressed out! I've been trying to take advantage of my limited free time by reading more, hanging out with friends, and playing board/video games. Everything starts ramping up in this next week, so we'll see how it goes! Side note: my sister Cami and I got our Dremel laser cutter delivered this weekend! We're planning on doing an unboxing of it sometime this week, and we'll be streaming it on if you'd like to check it out with us.   It's been a while since our last interview question! This one was asking for the greater of two powers, and and had answers! - What is the difference between passing by value and passing by reference? - What does it mean for a pointer to be null? - What happens when you use the dereference operator (&) on a null pointer?     I have decided that I will be telling jokes about furniture this year. Sofa, so good!   That's all for now, folks! Hope you have a great week. Be safe, make good choices, and make attainable goals!
#81
January 6, 2019
Read more

🥊 "Cheers to a new year and another chance for us to get it right." - Oprah Winfrey

Hello friends!

Ah! The end of the year is upon us! Merry Christmas Eve, by the way. I hope you're with people you care about this week, and if not, I hope you get to be soon. Onwards!     This past week, I 3D printed that I modeled from scratch! A long while back (as in, November of last year) I wrote in this letter that I wanted to learn 3D modeling, and I finally made something with the skill, at last! I used for the modeling (I had learned Autodesk softwares before but didn't have them on my computer), and was pleasantly surprised at the flexible online interface. I can't wait to print more! I probably won't be sending a letter next weekend as I'll be with family and friends for the new year, but I wanted to say thank you SO much for reading this every week (or just whenever you get to it, I know y'all are busy). It makes me so happy to see replies and interactions from you, and knowing that I might make your day just a little bit better keeps me writing this. I'm so grateful for you! Thank you, thank you, thank you. :)   Last week, I had you swap binary digits to make the longest string of 1s possible. Nathan did an awesome of his solution! Mark also wrote a ! This week's question: Example: greaterPow(3, 5) > a^b is greater greaterPow(2, 4) > Both are equal     "This is just nonsense!" I yelled, as I returned the perfume that didn't smell like anything.   That's all for now, folks! I hope you have a very Merry Christmas, New Year, Festivus, and whatever else you might celebrate. I'm so grateful for you. Be safe, make good choices, and close out 2018 with something you'll be proud of.
#80
December 23, 2018
Read more

🎪"I like nonsense, it wakes up the brain cells. Fantasy is a necessary ingredient in living." - Dr. Seuss

Hello friends!

I hope you had a great week! Mine was very productive. Let's get right to it!     This past week I found out that an article I wrote was published... in print!! I wrote an article for about making art with CSS! If I'm being honest, when they approached me and asked for an article, I thought it was for a blog post or some online journal and just didn't ask questions. It was only later that I saw on Twitter that someone had bought and read the magazine that I realized it was a physical copy! There's something about print that feels that much cooler. Being able to hold it in your hands and own it is so much more satisfying (I imagine this is how physical book readers feel, and those who still buy CDs or DVDs or records). Anyway, I haven't found a copy of the magazine yet myself, but I'm determined to get one in a physical store, and geek out about it being in print, in person!   Last week, I had you reverse words in a string (except for the first and last word)! We had a bunch of great answers. Here's , , and !  Joe's Python answer: def revMid(s):     li = s.split()     for i in range(1, len(li) - 1):         li[i] = li[i][::-1]     return ' '.join(li) and Sumaiya's Python answer! example1 = "I want some cake" example1 = example1.split(' ') def reverse(word):     tempList = []     index = len(word) - 1     for char in word:         tempList.append(word[index])         index -= 1     separator = ''     return separator.join(tempList) def reverse_middle(example):     last = len(example) - 1          for word in example1:         if word == example1[0] or word == example1[last]:             print(word, end= ' ')         else:             print(reverse(word= word), end=' ') reverse_middle(example= example1) This week's question: Example: 111011101') > 7  (Swap the 0 at index 4 with 1 at index 10) binarySwap('000111') > 3 (No swaps needed)     Twenty years from now, kids are gonna think the song, "Baby it's Cold Outside" is really weird, and we're gonna have to explain that it has to be understood as a product of its time. "You see, kid, it used to get cold outside..."   That's all for now, folks! Hope you have a great week. Be safe, make good choices, and stretch your neck right now and fix your posture.
#79
December 17, 2018
Read more

🎀 "Experience is the hardest kind of teacher; it gives the test first and the lesson afterward." - Oscar Wilde

Hi there!

Welcome back, I hope you had a great week! I had a birthday this past week and had a blast celebrating with family and friends. Let's go surfing.     Like I mentioned before, I had a birthday this past week! I got to see a bunch of friends and family, which was great. One of the most fun activities was indoor skydiving! It was terrifying. I screamed the entire time. I lost my voice. Worth it! One of the jumps we did was in virtual reality, where you had a VR headset on and watched a real skydiver fly while you were in the wind tunnel. I also screamed constantly during that one, while also feeling like I was skydiving in the future. Also, last week at CodePen we released a new UI feature, ! It looks like a very simple change, but under the hood, there were a LOT of changes. We added in some juicy things like React, GraphQL, Cypress, and mooore, which were both challenging and fun to write.   Last week, I had you write some CSS! This week's question: Example: reverseMid('I want some cake') > I tnaw emos cake     I once fell for a guy who only knew 4 vowels. Unfortunately he didn't know I existed.   That's all for now folks! Hope you have a great week. Be safe, make good choices, and stay focused! If you'd like to support what I'm doing, here's and . Or, if you would like to support an organization, check out !
#78
December 10, 2018
Read more

🎛 "How did it get so late so soon?" - Dr. Seuss​

We're baaaaack!

Hey friends! It's been a while! I've been traveling all over (I've been on 9 plane rides in the past 3 weeks, phew) and I'm so glad to be back home. Let's catch up!     Wow, it feels so long since I wrote one of these! I am finally back from traveling all over for holidays and vacation. Since getting back, I have almost caught up on Fortnite and The Good Place, so as you can probably tell, I've been productive. A big part of the vacation I took with my husband was food. My goodness, we ate such delicious food. In Athens we had some of the best cheese I've ever had, in Venice we had some of the best pasta I've ever had, and in Barcelona we had some of the best meat I've ever had. The thing that struck me about these meals is that they weren't at very fancy restaurants, they were just at random places in the cities. I admit, I can't think of a "typical" food in the United States where you could pop in to any random spot in that city and have your mind blown like we did on the trip. I wonder if it's a "grass is always greener" situation, or if we just need to get better at food over here. Welp, anyway, I guess we'll just have to keep eating to find out!   Last time, I asked you to determine if a number's digits were balanced. Kyle sent in ! This week's question: (Heads up, submissions in a link will be easiest to see for me, but you can submit it however you'd like!)     It's weird, when I eat wheat, it gives me a huge headache. But, if I get the wheat from someone else, I'm fine. It's just migraine.   Glad to be back folks, thanks so much for sticking around. Have a great week. Be safe, make good choices, and eat something tasty!
#77
December 2, 2018
Read more

🥩 "He who fails to plan is planning to fail." - Winston Churchill

Hello friends!

Hope you had a great week! I was off in North Carolina for a wedding this past week. I had never been there before, and it was beautiful! Heads up, I'm going to be traveling for the next couple weekends, and probably won't be sending this out. Think of it as your chance to have one less email preventing you from getting to inbox zero. Anyway, onwards!     Honestly, it's been pretty hectic around here so I don't have much to say in this section! The wedding last week was great, my sister Cami and I roadtripped a bit around the East and saw (which we didn't know existed) and the Smoky Mountains for the first time, which was fun. This next week my husband and I are *finally* going on our honeymoon! Really looking forward to some traveling and then Thanksgiving with family. So, all this being said, have a great week, and if you're in the United States, I hope you voted!   We got a good amount of responses for this past week! If you want to see, check out , , , and ! This week's question: Example: freq(12345678) > true freq(3.1415926535) > false freq(1337) > false     6:30 is the best time on a clock, hands down.   That's all for now folks! Be safe, make good choices, and let me know if you learn something in the next few weeks!
#76
November 6, 2018
Read more

🍬 "If you cannot do great things, do small things in a great way." - Napoleon Hill

Hello friends!

Hope your week was great. It's been a rough week politically in the US, and I hope this newsletter can at least give you a small bit of relief from it.     This week I saw a bunch of different people from my past, out of the blue. A friend from high school + college visited, then later at the grocery store I saw an old intern friend from several years ago, and while working at a cafe, a high school friend I hadn't seen since I graduated served my tea! It's a small world after all. I tried looking up some statistics of running into people you know randomly, and it's . Anyway. It was a really, really rough week in the news in the US. I've had a hard time logging in to Twitter and emails and seeing all of the hard-to-read headlines. All I can really say about it right now is: vote, stop hate when you see it, and log off regularly to give yourself a break.    Last week I had you produce a list of numbers that were a product of primes less than a given number n. Aditya wrote up his solution in Java !  This week's question: Extra credit: Do this question in less than O(n^2)! Can you do it in O(n)?     Today I found out my toaster isn't waterproof. I was shocked!   That's all for now, folks! Have a good week and fun Halloween. Be safe, make good choices, and wave back at babies who wave at you.
#75
October 28, 2018
Read more

🛢"One lie puts a thousand truths into doubt." - Khalid Yasin

Hi there friends!

Based on your responses to my last letter, we're back to scheduling these so you get them at the beginning of the week! Woo hoo! Let's get groovin.     The I designed have officially started shipping! It's been surreal seeing something that I've been working on for so long out in the wild. I've been seeing around the internet, and it's been so fun populating it more and more everyday. It's been , and it's a fantastic feeling being able to start and finish a project like this. As this chapter closes, another one begins... what it'll be, that's TBD. 😉   Last week I had you remove excess parenthesis from a string. Laura sent this answer! def remove_excess_parentheses(s):     """     :type s: str     :rtype: str     """     # maintain a stack of parentheses where each parenthesis also has its index attached (for removal afterwards, if necessary)     stack = []     res = []     l = len(s)     for i in range(l):         if s[i] == "(":             stack.append((i,s[i]))             res.append(s[i])         elif s[i] == ")":             if len(stack) != 0:                 top = stack.pop()                 res.append(")")             else:                 res.append("")         else:             res.append(s[i])     for i,c in stack:         res[i] = ""     return "".join(res) This week's question: Example: primeProducts(30) > [6, 10, 14, 15, 21, 22, 26]     No matter how much you push the envelope, it's still stationary.   That's all for now, folks! Have a great week. Be safe, make good choices, and stretch your arms and neck regularly. Do it now.
#74
October 21, 2018
Read more

🐧 "Education is not preparation for life; education is life itself." - John Dewey

Hello friends!

I hope you had a great week. I've been doing some experimenting, if you can't tell, switching up the dates and times when I send this out. Do you have a preference? Reply to this email or to let me know!   (shameless plug, I'm proud of this one!)   This past week, I found out I was accepted to grad school! I'm going to be pursuing my Master's degree in Computer Science from Georgia Tech starting next semester! Now, I'm not going to be moving to Georgia (for better or for worse). I'll be doing the whole thing online! I am both excited and nervous for it. I've always been interested in pursuing deeper CS knowledge, and I can't wait to get started. It's about to get even nerdier around here.   Last week, I had you implement a circular linked list! In case you need some direction with that, on the subject. This week's question: Example: balance('4-3)+5+)6+(5+9)*(8)+9(') > 4-3+5+6+(5+9)*(8)+9     It’s very rare that a defibrillator fails, but when it happens, nobody is shocked.   That's all for this time, friends! Hope you have a great week. Be safe, make good choices, and stop procrastinating on that thing.
#73
October 11, 2018
Read more
  Newer archives
 
Older archives
GitHub https://cassidoo.co LinkedIn