I’ve recently begun exploring tabletop gaming and I’m happy to report my journey so far has been thoroughly enjoyable! Here are two games (one board and one card) that I’m currently hooked on.
Pandemic is a cooperative board game (2-4 players) that pits your team against four malevolent diseases, which are conveniently named red, blue, yellow, and black. Players take turns moving between cities and trying to stymie the spread of the various diseases while gathering enough resources to discover respective cures. Discussion among the team is encouraged and a must for victory as coordination is key. It’s a challenging game; it took us four tries to finally win a game! Mechanics in the game make each iteration feel novel and fresh: each person is randomly assigned a role that gives them special perks (e.g. a medic can cure diseases in a town faster) and how diseases spread are determined from a shuffled (random) deck of cards.
There are several expansions to Pandemic that increase the challenge in this already challenging game. If this sounds daunting, I still definitely recommend getting the On The Brink expansion from the get-go as it includes much-needed dishes and trays for organizing all the tokens and disease cubes. Pandemic and On The Brink will run you about $50, but I’ve found it a worthwhile investment!
Monopoly Deal is a faster way to play Monopoly. You’ll acquire property, charge rent, put houses and hotels down, screw over friends, and probably lose friends. But it won’t take more than 15 minutes to accomplish all this and all you need to carry around is a deck of 110 cards! You win when you can acquire three complete sets of a property color.
As with regular Monopoly, your
friends mortal enemies will be looking to deplete your bank, take your property, and inflict permanent damage to your soul. Luck is certainly useful when drawing cards from a shuffled deck. But I’ve also lost consistently enough times that some strategy (that I’m unaware of) must be at play! Purchasable today for under $5, getting this game won’t break the bank!
If I’ve piqued your interest, but you’ve got any questions feel free to send me a tweet!
I previously wrote about the Instagram “report user” user experience, which I felt left users hanging at the end. I noticed the problematic part of the flow has recently been changed! But I’m unsure how I feel about the changes. Here’s the new “report user” flow:
Check out that last frame where you are thanked for reporting the offending user. Before, if you reported someone Instagram made you hit “Cancel” to dismiss the confirmation but now it gives you TWO “DONE” buttons. This new UX paradigm which I dub Better Safe Than Sorry UX - let’s just put the button twice to ensure users get it is pretty innovative, certainly strange, and questionably provides a good user experience.
Every so often I have friends ask me to talk to the someone who is interested in computers and programming. I’m always eager to run my mouth so I, naturally, always jump on the opportunity. But after telling the same story multiple times I figured it’d be more efficient to just write down my definitive TIPS FOR ASPIRING PROGRAMMERS here and just share this instead.
It’s never too late to start. You don’t need to decide to become a programmer early in life. A lot of people don’t even study computer science in college and just pick up programming on their own. Some people don’t even go to college, although I highly recommend college as it was a great academic and personal learning experience. I have worked with many talented people who have taken many different paths to becoming strong programmers.
Don’t get hung up on picking your first language. Lots of people are intimidated by how expansive the programming world is. You can program for micro-chips, phones, computers, servers, and even networks composed of many computers. The number of programming languages out there is also ridiculous. But don’t get bogged down by all the options you have. Just pick a language and go with it. The first language I learned was Java and I think it’s still a decent first language to learn.Read More
I recently read a post by Chris Beams on How to Write a Git Commit Message. Before I get into it, I want to emphasize that this post isn’t about hating on Chris or his advice; they’re both awesome. ♥
This post is about something I noticed in Chris' post and something I hear come up way too often in the programming world: how amazing the command-line interface (CLI) is and how everyone should be using it as exclusively as possible because it’s the best thing ever.
Towards the end of Chris' post, we are left with some helpful tips to be the best git-people that no one ever was. One tip focuses on the importance of using git on the CLI:
Learn to love the command line. Leave the IDE behind.
For as many reasons as there are git subcommands, it's wise to embrace the command line. Git is insanely powerful; IDEs are too, but each in different ways. I use an IDE every day (IntelliJ IDEA) and have used others extensively (Eclipse), but I have never seen IDE integration for git that could begin to match the ease and power of the command line (once you know it).
Certain git-related IDE functions are invaluable, like calling git rm when you delete a file, and doing the right stuff with git when you rename one. Where everything falls apart is when you start trying to commit, merge, rebase, or do sophisticated history analysis through the IDE.
When it comes to wielding the full power of git, it's command-line all the way.
You know what I think? FUCK COMMAND-LINE INTERFACE ELITISM.
Look, I use git on both the command-line and with my preferred git GUI of choice: Tower. I like to do certain things in Tower (review commits, stage individual files, write commit messages) and I like to do other things on the CLI (interactive rebases, fetches, resolving merge conflicts, pushes). It works well for me. I am comfortable and capable with my workflow, and I’m pretty fast at getting from point A to point B in the git world, even though I am not going “command-line all the way.”
For anyone getting started with git I always tell them about my own workflow. They’ll learn about how you can use both GUIs and CLI, which is more than enough to get them going. If they have any questions down the road, I’ll also already be familiar with their setup. :) I don’t feel like I’m setting them up for failure by encouraging using a GUI but rather just showing them that there are many ways to get git done. Becoming comfortable and good at anything is a process and it should be treated as such.
I think this whole “CLI or bust” attitude is really silly. Writing a blog post about it
is definitely may be even sillier…
P.S. I also can’t stand shitty commit messages so if you haven’t already, go read Chris' post now!
Sometimes you just want to paste. And sometimes you can’t paste. Right-clicks are ignored. Command/Control + V is also ignored. Sadness ensues.
Off the top of my head, here are some of those annoying times you can’t just paste:
- Entering passwords when creating and opening an encrypted disk image.
- Websites that (stupidly) prevent you from pasting passwords.
- Pasting text copied from outside a Genymotion emulator into the emulator.
- Logging into certain apps like Google Drive on Mac while setting them up.
There are plenty of AppleScripts and applets that promise to simulate typing what’s on your clipboard to get around this issue. My favorite is Paste Typer. Download it, copy it to Applications folder and then drag it from there into the dock. Put your cursor where you want text pasted, click on the icon on your dock, and boom! The contents of your clipboard are pasted.
I always have a hard time finding a download link for Paste Typer when I want to download it, so here is a link to Paste Typer.
Now enjoy the freedom to never be denied your unalienable right to pasting.