Fix: This version of ChromeDriver only supports Chrome version 103

If you’re like me and trying to set up a scraping project and leveraging Selenium you may have run into the path requirement that I found to be puzzling. Luckily chromedriver-py solves that for you. However, upon install, I found that it wasn’t accepting the version of Chrome that I had installed (apparently the latest release only supports the beta version of Chrome).

My error message:

selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 103

Current browser version is 102.0.5005.115 with binary path /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

After installing Chrome’s beta version and being unsuccessful there I figured out that earlier versions of chromedriver-py support earlier versions of the browser.

I was able to install a specific version of chromedriver-py via pip using this command (which is also helpfully included on the version pages on pypi.org):

python -m pip install chromedriver-py==102.0.5005.61

https://pypi.org/project/chromedriver-py/102.0.5005.61/

Remember to uninstall the version that isn’t working for you first.

Happy scraping!

Things and Places in SF + Bay Area

I’ve been in the Bay Area for a while now (7 years) and put together a list for friends visiting to give them some inspiration on what to do when they visit. Hope its helpful to you!

To eat

  • Chicken sandwich at the Bird (my favourite chicken sandwich)
  • Kin Khao (expensive but amazing Thai food) – currently closed but you can check out their sister restaurant Nari
  • Tacko (upscale + delicious Mexican food)
  • B Patisserie (awesome pastries, try their Kouign Aman)
  • Che Fico
  • Get ice cream from Salt and Straw and wander over to Delores Park (where you can often get marijuana enhanced snacks if you like)
  • State Bird Provisions
  • House of Prime Rib (an SF classic, its quite the experience. I’d say its not as good as its priced but worth a visit for the experience potentially).
  • Wayfare Tavern
    • Their popovers are amazing and the chicken is delicious
  • Tartine Manufactory
    • Heidi loves their banana cream pie
  • Flour + Water
    • Solid pasta & pizza
  • San Tung Chinese Restaurant
    • Get the chicken wings
  • Jane the Bakery
  • Yank Sing
  • Chinatown Dim Sum & Baked Goods
    • Napoleon Super Bakery
      • Get the egg tart, buttercream, and whatever else catches your fancy
    • Good Mong Kok
      • Delicious dim sum but often ridiculous lines. If line too long go to the other place listed below.
    • Delicious Dim Sum
      • Similar quality to GMK without the nutty lines.
      • Ordering dim sum
        • My recommendations would be the following dishes:
          • Sesame Ball
          • Shrimp Dumpling
          • Shui Mai
          • Ham Sui Gok
          • + anything else that catches your eye!
  • Breadbelly
    • Online orders open at 10AM (open Thursday – Sunday)
    • I recommend the Kaya Bun and Brown Butter Mochi
    • BREADBELLY (toasttab.com)
  • Boba
    • Boba Guys
      • SF classic. I think they’re overpriced and somewhat overrated but their boba tea is good. Good fit if you’re kind of boujie.
    • i-Tea
      • One of my favourite boba tea shops: I-TEA
  • Coffee
    • I don’t really drink coffee / tea but people are really into Blue Bottle & Pete’s
  • Ice Cream
    • Bi Rite
    • Salt & Straw
  • Crazy expensive but worth it if you have that sort of money to spend
    • Niku Steakhouse
    • Lazy Bear
    • The Shota omakase
  • Plow SF
    • Excellent brunch place 
    • Get there early though as the wait can be crazy ~
  • Mexican
    • Taquería El Farolito – 2779 Mission St San Francisco, CA 94110
      • SF Mission District classic. Excellent value and about as legit as you’re going to get.

To see

  • Yoda Statue at the Lucas Arts building in the Presidio
  • Lover’s Lane in the Presidio
  • Palace of Fine Arts
  • The Painted Ladies
  • Transbay Terminal (go to the rooftop garden and walk around it, its awesome)
  • John McLaren Park
    • Huge park with pretty epic views of South San Francisco
  • Rolling hills out at Mt. Tam
  • Ferry Building
  • Coit Tower
  • Sutro Baths
  • Land’s End Lookout / The Labyrinth
  • Huntington Park
    • Beautiful park in the centre of Nob Hill
  • Transamerica Pyramid
  • Maiden Lane
  • Yerba Buena Gardens
  • Chinatown
  • Crocker Galleria Rooftop
  • Golden Gate Park
  • Tile steps throughout SF. So pretty~
  • Mori Point
    • Short hike from parking lot and beautiful views! 
  • Grandview Park
    • Absolutely stunning views of the city. I recommend going at sunset or sunrise 

To do

  • Biking
    • Bike across the Golden Gate Bridge over to Sausalito + take ferry back (pretty easy).
      • I recommend renting a bike from the Bike Hut
    • Bike across the Golden Gate and do the Hawk Hill loop (moderate to hard). Really beautiful but a rough climb if you’re not a road biker.
    • Bike through Golden Gate park through to Ocean Beach
      • Visit –
        • The De Young Museum
        • Botanical Garden
        • Dutch Windmill
        • The bison!
        • Turtles at Stow Lake
  • Hiking + Walking
  • Touristy
  • Other activities
    • Disc golf at Golden Gate Park
    • Go pet farm animals at Tilden Little Farm in Berkeley
    • Play mini-golf at Urban Putt
    • Visit some of the the Public Open Spaces in the city
    • Drive the ridiculous tourist carts around town
    • Watch a movie at the Alamo Drafthouse and order a meal to your seats
    • Museums
      • San Francisco Museum of Modern Art
        • I don’t like modern art but many people think highly of this place.
      • Exploratorium
        • Lots of fun practical science exhibits here. Lots of fun as a date night if you go to Exploratorium after dark.
      • Asian Art Museum
        • My favourite museum in the city. So many beautiful, historical cities.
    • Farmer’s Market at the Ferry Building (Saturday mornings)
    • Japanese Onsen (466 Eddy St, San Francisco, CA 94109)
    • Ferry to Alcatraz Island
    • Bike Across Golden Gate Bridge to Sausalito & take ferry back
    • Visit Dolores Park and Chill Out
    • Bouldering at Dogpatch Boulders or Mission Cliffs
    • Visit Spark Social in Mission Bay
    • Exploratorium
    • California Academy of Sciences
    • Stow Lake @ Golden Gate (turtles!)

Non-SF Based Activities

  • Day trip down south to Big Sur/Carmel-by-the-sea
    • Visit the Monterey Aquarium
  • Day trip out to wine country
    • Napa, Sonoma, Healdsburg
    • I think visiting somewhere other than Napa is better (so Sonoma for example) as its a bit too busy generally but it can be exciting.
  • Day trip up north to Mendocino
    • Its so beautiful here and there are so many amazing hikes, national parks and costal views to experience
    • Russian Gulch State Park
      • We took the North Point trail up into the forest. It’s a steep climb to start but you’re embedded in the woods and it’s pretty magical. We hiked to the waterfall which was not impressive in the least but was a good end point. We came back along the Fern Valley trail (which was “closed” but it was totally walkable and plenty of people were on it).
      • We wrapped up with a picnic at the upper picnic area which provided a view of the bridge.
    • Mendocino Headlands State Park
      • Stunning scenery directly accessible from the parking. You can also see the lighthouse in the distance!
    • Point Cabrillo Lighthouse
      • Beautiful lighthouse and grounds 0.5 miles from parking
    • Mendocino
      • Cute little town nearby, make sure to head to the water and check out the park directly adjacent to the town
  • Day trip south to explore Silicon Valley
    • If you’re interested you can meander around Stanford University, visit the Computer museum, bike around the Google campus, etc. Pretty unique feature of the Bay Area

How to request removal of your deleted content from Google

Have you ever deleted a post online or made a profile private and wanted it to be removed from search results? If that content is no longer available to the public, it should eventually be removed from search results but, if you want to expedite it, you can actually submit a request directly to Google to have it be removed from search results by using this tool (https://search.google.com/search-console/remove-outdated-content).

This tool only applies if the content is no longer publicly available so make sure to have it taken before submitting a request.


If you want to learn more about the tool you can read about it here (https://support.google.com/webmasters/answer/7041154).

Resources for PMs

I’ve had quite a few folks reach out for guidance on navigating their journey as a PM. Since it’s a newer field and a lot of it has to do with softer skills it can be a bit hard to know where to start to build on your skills and become a more effective PM. Here are some resources I’ve found to be helpful in developing my own skills. If you’ve got any you’ve found useful or would like to share please leave a comment, :).

Books

The best resource I’ve found on Books for PMs is from Ken Norton. You can view it directly here: https://www.kennorton.com/essays/books-for-product-managers.html

These were the ones I found to be most useful:

  • Nudge
  • How to Lie with Statistics
  • Interview Math (Lewis C Lin, helpful for quant interview prep)
  • Cracking the PM Interview
  • Decode & Conquer
  • On Writing
  • In the Plex (if interviewing with Google)
  • Don’t Make Me Think

Courses

There are a few different options for PM-related courses out there but I think the runaway favourite in terms of value and actual practical application is Reforge. Their courses are built around key concepts like Retention and Engagement, Advanced Growth Strategy, and Product Strategy. I highly recommend taking one of these courses if you have the time & resources to do so. It’s generally a 6-8 week commitment at 6-10 hours per week of time.

Newsletters

Newsletters can be a low friction way for you to continuously get helpful content for you to consume on a periodic basis. Open to more suggestions if folks have them.

WoW Dungeon Reset to send you back to the start of the instance | Classic WoW

Sometimes you’re running a dungeon on repeat (say Blackrock Depths Emperor runs or a Maraudon Princess run) and don’t want to have to port back to a major city (or hearth away) and then run back to the dungeon again. There’s actually a way to reset the dungeon while keeping you in the instance and sending you back to the start of the instance.

Here’s how to do it:

  • Once you want to reset the dungeon and send yourself back to the start of the instance.
  • Invite an alt character that is not inside the dungeon
  • Promote that alt character to be party leader
  • Have everyone log out of the game (you need to log out & wait the 20 seconds you can’t just expedite by exiting)
  • Reset the dungeon from that alt character (right click on your character frame and click on “Reset all instances”). If you’ve done it correctly you’ll get a message like “Maraudon has been reset”.
  • Log back into the instance on your other characters and you should now be back where you zoned in with a fresh dungeon to run!

References:

Solving “Importerror no module named”

So you’re trying to get something done and you’ve found an awesome tool to install via pip. You pop open Terminal, run your pip install command (in my case, pip install google_images_download), install the module successfully, and are ready to get to work. You start working on your Python script and get an error:

ImportError: No module named google_images_download

Well, that doesn’t make sense, you just installed it.
Turns out, it may not have been installed in the right place.

Solution

I found my solution here: https://stackoverflow.com/questions/32680081/importerror-after-successful-pip-installation

Basically, put python -m before your pip install command.

I also had to set up pip directly in my python environment using this command python -m ensurepip --upgrade --user

https://pip.pypa.io/en/latest/installation/

Final Set of Commands

python -m ensurepip –upgrade –user

python -m pip install google_images_download –user

No more errors. Nice!

Running AutoHotKey as Administrator

I was having challenges where a script that used to work for sending keystrokes directly to a window based on its window title wasn’t working. I tried troubleshooting a bunch of stuff (so weird since it was working before) but nothing was sticking.

I stumbled across a comment mentioning that programs being run as Adminstrator couldn’t be interacted with by programs that were not being run as Administrator (in this case, AHK for me).

By changing the AutoHotKey executable to always run as administrator I was able to send commands again without any issues.

Fix for BLZBNTAGT00000960 (CoD Warzone crashes on start, update, install) – December 2021

Recently had an annoying error come up where I couldn’t start Call of Duty: Warzone. I tried:

  • Scan and repair which took forever and didn’t work
  • Restarting my computer
  • Un-installing and re-installing (this didn’t work and now I couldn’t even install the game)
  • Deleting my Battle.net folder in AppData
  • Running Battle.net as Administrator

Ultimately, what did work was going into Properties –> Compatibility for Battle.net.exe and Battle.net Launcher.exe and checking the box for “Run this program as administrator”.

Credit to this Reddit thread for helping me finally find the solution:

Fix for Xbox Game Pass Install Error (0x00000001)

If you’re like me and you wanted to download Age of Empires 4 to play with your friends on Game Pass you might have run into this error. You start the install and for some reason its not progressing. You go to check on your progress and see there’s an error.

Maybe you restart the app, your computer or choose a different install location (I did all those things). Still no luck.

UIltimately this is the fix that worked for me. Credit to these Reddit and Microsoft Community posts:

1.Run Windows Powershell in admin mode (I did this by starting it up, and then right clicking on the icon in my task bar to create a new instance in administrator mode).

2. Close the Xbox app.

3. Enter this command: Get-AppxPackage -AllUsers | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register “$($_.InstallLocation)\AppXManifest.xml”}

4. Wait for it to complete and try the install again.

Problem Solved!

Fix broken pipenv in a virtual environment (could not find a version that matches X)

I’d messed up my pipenv previously by trying to get it to install a module that just wasn’t working out for me. In using pipenv install -skip-lock I’d inadvertently put my pipenv in a state where it was constantly stuck in a loop where it was trying to install “blocks” through pipenv which just wasn’t possible.

This is what my error log looked like in terminal:

[pipenv.exceptions.ResolutionFailure]: No versions found
[pipenv.exceptions.ResolutionFailure]: Warning: Your dependencies could not be resolved. You likely have a mismatch in your sub-dependencies.
First try clearing your dependency cache with $ pipenv lock –clear, then try the original command again.
Alternatively, you can use $ pipenv install –skip-lock to bypass this mechanism, then run $ pipenv graph to inspect the situation.
Hint: try $ pipenv lock –pre if it is a pre-release dependency.
ERROR: ERROR: Could not find a version that matches blocks
No versions found
Was https://pypi.org/simple reachable?

To fix the problem, I ended up deleting my pipfile and running the same install command again. It installed the package I was trying to get (elasticsearch) and updated Pipfile.lock with the new project requirements.

Note: Your pipfile will look something like this in your project folder.

My terminal output after deleting the pipfile in my virtual environment:

(venv) Nicholass-MacBook-Pro:microblog nicholaspezarro$ pipenv install elasticsearch
Creating a Pipfile for this project…
Installing elasticsearch…
Adding elasticsearch to Pipfile’s [packages]…
✔ Installation Succeeded
Pipfile.lock (0b8641) out of date, updating to (9d3b63)…
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
✔ Success!
Updated Pipfile.lock (0b8641)!
Installing dependencies from Pipfile.lock (0b8641)…
🐍 ▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 2/2 — 00:00:00

Reverting a bad commit and removing it completely from Github

Let’s say you accidentally commit and push a file full of passwords (like a .env file) that you don’t want other people to want and now it is part of your public project on Github? How do you get rid of that? Fear not, follow these two commands and you’ll be back to before you took that ill-fated action.

Before beginning, make sure that you backup any files and changes you’d like to preserve elsewhere as your work in the repository will be wiped back to where you were at your previous commit.

git reset –hard HEAD^
git push origin +master –force

(Note that here I used “master” as that was the branch I was working on, you’ll want to change “master” to whatever your branch name is and use that in the command)

Useful links: https://stackoverflow.com/questions/448919/how-can-i-remove-a-commit-on-github

readlink: command not found

I’ve been working on a bunch of projects that involve Python and a decent amount of commands written and issued in terminal. At one point, I was trying to boot up a local server for a web app I was running and kept running into the error “readlink: command not found”. After a ton of searching and attempting to understand what was going on, I was able to find a solution that solved my problem and allowed me to get back on track.

The core of this issue is changes made to your .bash_profile that renders it unreadable or unparseable so you need to jolt it out of that state to allow it to function normally again.

The answer here on Stackoverflow ultimately led to me solving my problem.

It is happens when you just copy the line (below) into the .bash_profile without removing the quotes (‘xxxx’)
export PATH=’/usr/local/bin:$PATH’

To resolve, just run in console:
export PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin

Then, edit again the file removing the quotes:
vim ~/.bash_profile

The terminal commands that I ran locally ended up looking like this

Nicholass-MacBook-Pro:post-covid-19 nicholaspezarro$ export PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin
Nicholass-MacBook-Pro:post-covid-19 nicholaspezarro$ source ~/.bash_profile

Hopefully this helps you out if you’re having this issue!