Thursday, December 5, 2019

  • Paul asked for help with some web development stuff.
  • Tensorflow = most ML. PyTorch = computer vision and language processing. Keras = deep learning and neural nets.
  • Caveat emptor = buyer beware.
  • My top artist of the past year on spotify was erra.
  • Reddit's userbase is 430m, which is bigger than twitter.
  • Pip is getting 400k in funding to improve next year.
  • Django released its next major version, 3.0. Biggest improvement is ASGI (async).
  • Watched velvet buzzsaw. Thought it was horrible, personally.
  • Updated linkedin, finally.
    • Certifications: CLAD.
    • Added finish date to spacex, vacated current position.
    • Awards: capstone 1st, smallsat 2nd. Moved things around.
    • Added organizations like calsol, pts, citris, ssdl.
    • Removed clarity consultants and citris from work exp. Just pumpkin spacex self.
    • Adjusted all skills.
    • Added GRE scores.
    • Added gitlab and blog links.
    • Accepted all requests (there were hundreds), looked at all messages.
  • Practice questions.
    • Looked through interviewbit. Also looked through hiredintech. Lot of basic info on both.
    • Moved on to careercup. Great repository of practice questions.
    • DP = dynamic programming. Type of problem usually works well with some classical recursion. Solve the subproblem, store it, and assemble them together to get the final solution.
    • Did a TON more videos on youtube.
  • Watched a few videos of candidates detailing their 2019 interview processes at the big ones, google/amazon/etc. It's disappointing how much weight is still given to datastructures/algorithms questions, especially in non entry level roles.
  • Started the brine for a new round of beef ribs. These ones are kinda old, and were frozen/thawed.
  • Python reminder. Mutable = (dict, list, set). Immutable = (str, int, float, tuple, bool).

Wednesday, December 4, 2019

  • Magnus Carlsen is the greatest chess player of all time. He's 29. Garry Kasparov is #2. He's the legend. https://en.wikipedia.org/wiki/List_of_chess_players_by_peak_FIDE_rating.
  • Supercontest.
    • The pick id is almost at 9000. It will increment with every pick, and users can repick as much as they want until lockdown. I won't need to reindex this for a long time, it's not horribly sparse.
    • Looked forward to week 16 where there is no TNF, but 3 games on saturday instead. The app should handle these just like the 3 thanksgiving games, and the regular thursday games. Pick until kickoff. Updated the help text to explain this.
    • Week 17 is all sunday games. It should handle that fine too.
    • Made the face collage repeat-x.
    • Committed lines. Submitted picks.
  • Zyme can move as quickly as 1% in 4min, as seen today. Shot up a bit. Made $275 on the day.
  • Post Malone was the most streamed artist of 2019. Drake was the most streamed artist of the 2010s. The most streamed song of the 2010s was Ed Sheeran's Shape of You. https://newsroom.spotify.com/2019-12-03/the-top-songs-artists-playlists-and-podcasts-of-2019-and-the-last-decade/.
  • Made all gitlab projects public again. I flip on this so much. At the end of the day, I want to support open-source tech across the board. Who cares if it comes from me or someone else. Let's just improve.
  • GitLab has pretty impressive culture. They're fully remote, and here's why: https://about.gitlab.com/company/culture/all-remote/. They even have specific rationales for stuff like burnout, anxiety, etc: https://about.gitlab.com/company/culture/all-remote/mental-health/.
    • Their application made this clear. It was very accommodating. It asks for your pronouns.
  • Connected lumin to gdrive in incognito.
  • Winner of each division advances, 1, 2, 3, 4 for each conference. The next 2 best records play in the wildcards against 3 and 4. Then everything is as expected after that. Each conference with 4 remaining teams.
  • This is cool:
  • Apps.
    • Played with printing PDFs from the resumes. Thought about where to host them. You could just do public shareable links from google drive. Google docs has a "publish to the web" option. You can do it straight from a word doc, don't need a pdf. It will update with the gdrive source. I did that.
    • Finalized resume for sendoff. Whittled it down to an abridged resume as well.
    • Looked at disney. Not much.
    • Intuit's interface was kinda weird. Didn't search much.
    • Looked at spotify. No software eng positions in LA/SF.
    • Robinhood, menlo park: https://careers.robinhood.com/openings?gh_jid=1946247.
    • 23andMe, sunnyvale: https://www.23andme.com/careers/4338566002/.
    • Renaissance, new york: https://www.rentec.com/Careers.action?computerProgrammer=true.
    • Netflix, los gatos: https://jobs.netflix.com/jobs/865957.
    • GitLab: https://boards.greenhouse.io/gitlab/jobs/4247953002.
    • Pornhub is based in montreal.
    • Probably not gonna apply to amazon. Can always followup with recruiters later.
    • Replied to Rosie from Google (via olivia, friend in X/moonshot), who had reached out 15 months ago. Replied to Tara as well, another recruiter who reached out. She responded, and we have a call scheduled for monday.
    • Submissions today: gitlab, netflix, renaissance, 23andme, robinhood, google.
    • The longest one was gitlab, with actual questions. The others were basically just a simple resume upload, with explicit fields for contact, and gender/race/veteran/disability declarations.
    • Created doc to track all details (team, title, locations, salary, etc).
  • Some great sports voice cracks:
  • Looked through a bit of ruby/rails documentation to familiarize to my expertise in python/flask.
    • Lot more builtins than python, it seems. Esp for webdev specific stuff. Gems. Templates.
    • .rb file extension. erb is the templating system, .erb files.
    • Checked some template services too: https://github.com/mattbrictson/rails-template.

Tuesday, December 3, 2019

  • Paid rent and talked to sherisse about moveout.
  • Sundar Pichai taking over for Larry Page as CEO of alphabet.
  • dip = density-independent pixel. Use this, instead of px, so that it adjusts by viewport size. Use multiples of 8 so that it can scale evenly.
  • Bought my holiday flights home. 14k miles and $11. I still have 125k miles to burn from my old delta amex.
  • Settled more briley finances. Now we just halve my utils and his internet since march (2019).
  • Updated banner for the week. Deployed.
    • Remaining banners: franky 15, petty 16. Only one available left.
    • Something I've been doing lately so both the height and width autoadjust: `background-size: contain; max-height: 250px; height: {100*height/width}vw;`
      • Right click your collage and check the properties. Divide height/width, multiple by 100 to make it a percentage, then round down to the nearest percent.
  • After a year of experimentation and 50 smoke sessions, I think I like the flavor of hickory and apple a bit more than mesquite and pecan. I'll continue to isolate.
  • PNG is better. It uses a lossless compression, whereas jpg is lossy.

Monday, December 2, 2019

  • The price of the christmas tree has doubled in the past decade.
  • Picked up beef ribs, pecans, and honey from costco. Bought ghost pepper chips and beet from riteaid.
  • Cleaned the entire smoker (a deeper scrub than usual).
  • Smoked 18lbs of short rib. Hand pressed tortillas. Bchan in town with the hot sauce.
  • 2c masa harina, 1.5c water, 1tsp salt. Mix. Flatten. Griddle at 7. 10s one second, 2m other, 2m back.
  • Ordered new wood chunks. A 4lb bag of hickory, cherry, apply, mesquite, pecan, each $7.
  • Cool article on machine learning for horse race betting: https://teddykoker.com/2019/12/beating-the-odds-machine-learning-for-horse-racing/.
  • Tabulate is a python package that's much better at pretty-printing the output report than my custom method. https://github.com/astanin/python-tabulate.
  • Dry knives right away. They can mold, oxidize, rust.

Sunday, December 1, 2019

  • Calm is offering a lifetime membership for $160, a 60% discount for black friday. I just paid my renewal. This is a little over 3 years. I'll hold off. Maybe next year I'll wait to not resubscribe, then get lifetime.
  • Supercontest. Made the email body only show the target(s) of the late pick message. Emails the admin separately with the same info, controllable by input boolean.
  • Good FS article about how inaccurate performance reviews are: https://fs.blog/2019/11/performance-reviews-kill-culture/. A suggested alternative: have employees grade themselves relative to their old selves, not current peers.
    • Farnam Street has a youtube channel. I'll check out a bit of it.
  • DS&A.
    • Brute force is usually quadratic. Say you have an n-dimensional array. Check each item n against all other yields n^2 total permutations. Quadratic is bad. Only having to iterate over the whole thing once is better, linear. Doing something like a binary search is even better, logn.
    • Most searches are O(logn). This includes binary search.
    • Most sorts are O(nlogn). Quicksort usually a great option.
    • Most space complexities are O(n) worst case, for both searches and sorts. Quicksort is O(logn).
  • New m night shyamalan tv show! https://www.youtube.com/watch?v=ZaaQoutaEj8.

Saturday, November 30, 2019

  • Was getting the "update information is outdated" graphical error in ubuntu. Ran `sudo apt update`.
  • Remember, containers use the host OS' resources. They use the host kernel. You cannot have a linux container on a windows machine, or a windows container on a linux machine. There ARE services out there like "Docker for Windows" that provide this, but ultimately they use a VM middleman then a container off that.
  • Watched john wick 2 and 3. Keanu Reeves is 55. Citizen of Canada, born in Lebanon, and of English/Chinese/Hawaiian descent. No high school diploma.
  • Started thawing the last 2 racks of beef ribs. After 40lbs of short, 40lbs of spare, and 40lbs of bird in the last month, the freezer is now empty for the first time. Next trip will be maple/applewood pork belly, sliced into bacon.
  • Interviews.
    • Wrote the skeletal slidedeck that could be used for various presentations, depending on the prompt. Would have to fill in some detail to cater to the specific audience.
      • There is good balance. I alternate slides between quantitative/technical demos and qualitative/intangible lessons.
    • Went back over the 2017 recruiter emails. Compiled all the resources. Deleted the gmail label.
    • Wrote the full plan for remaining studying, mock interviews, etc.
    • Watched a view videos on practice questions.

    • Reviewed all my gdoc notes.

    • Organized my WHOLE drive.
  • Got a few more cascading sentry issues (4) from a postgres connection closing mid-request, from someone's iphone safari. Resolved without action.
  • IAM – Identity and Access Management.


  • Windows file systems are usually, NTFS, FAT, or exFAT.
  • Mac file system is usually HFS Plus.

Friday, November 29, 2019

  • Didn't make any market moves to prepare for black friday. I'm not in any consumer-heavy sectors anyway.
  • Something on bloomberg's backend failed because it resubscribed me to the 4 newsletters I quit a while back. I had to unsub again.
  • Did some pro/con weighing for the possible case that I'm not moved up to the bay by the end of dec, which would mean that briley moves first. Considered job proximity, money for relocation, money for full rent myself, wifi, couch, staging at parents, change of env, more. Decided that I'll stay until the next step is locked, rather than uproot.
  • Astronaut Mark Kelly is running for Senate in Arizona: https://onezero.medium.com/do-astronauts-make-good-politicians-96ec4945980. Good. Policy should be born from logic, not politics. We need more engineers and scientists in office.
  • Browsed a bit on amazon for black friday and prepped for cyber monday. Bought some coffee.
  • Cool chrome extension to hide all likes across all (main) social media platforms: https://www.hidelikeseverywhere.com/.
  • Watched a cam version of the mystery Knives Out.
  • Not perfect, but there's a definite correlation between quality of code and quietness of typing. Fervency can come from true speed, but usually it's poor form, inefficiency, disorganization, or a nonlinear approach.
  • Updates and restart.
  • Wrote the weekend study plan interview questions/whiteboarding practice.

Thursday, November 28, 2019

  • Friendsgiving was solid last night.
  • 3 nfl games today for thanksgiving, love it.
  • Pandas has built-in support for moving back and forth between dataframes (memory) and databases (persistent).
  • Ordered white elephant gift.
  • Got some new watches.
  • Median and mean salaries for tech CEOs are around 300k in base, and 2m in options: https://medium.com/@sammyabdullah/startup-ceo-salaries-5bebe0f89e14.
  • Made new batch of protein bars, and (separate) macadamia nut butter. Definitely in the second best tier with pistachio butter, just below pecan.

Wednesday, November 27, 2019

  • Smoked all 40lbs of turkey for friendsgiving. Roasted the trimmings in a skillet for gravy.
  • Updated the supercontest banner. Deployed. Gitlab was being weird, wouldn't trigger my build and the execution was slow. Frontend also wasn't showing the logs, but locally did: `docker logs -f runner-mJ4Y_63h-project-14681470-concurrent-0-build-4`
    • Triggered and built fine about an hour later when I deployed again.
  • Did not have to adjust anything for the supercontest on thanksgiving. There are 3 games on thursday. As long as you pick them before kickoff, you are free to pick all 3. Everyone's picks will not publish till sat night, like usual. Scores are fetched all thurs, they don't wait for the usual 5, so the morning games will still update live.
  • Committed new lines. Submitted picks.
  • Tradebot.
    • Updated get_tickers() to use nasdaq's ftp server, fetching all traded symbols. This yields ~9000 right now, much better than the ~2500 I was getting from that old sketchy api.
    • It also properly returns the tickers only. Market cap and other data can be fetched separately (as they are).

Tuesday, November 26, 2019

  • Placed an order last night (via amazon) from the whole foods market, instead of fresh. Experience was basically the same. Slightly different items. Different carts. Same 2hr delivery.
    • Got some more bbq gloves and press-and-seal through regular amazon as well.
    • Added the official amazon chrome plugin. Live tracking updates and more.
    • Prepped all food once it arrived.
  • 1-1 in ff. Out of playoffs for both. 4-1 in sbsc.
  • ESPN's power rankings are pats ravens niners. Disagree. Ridiculous to keep the pats at 1 after the absolute blowouts of niners over packers, ravens over rams. I'd go ravens niners pats.
  • Supercontest. A uwsgi worker died (happens sometimes, respawns automatically), but it happened this time while processing a request. Psycopg2 detected that and failed the query with a helpful traceback.
  • Some interesting investing points from Tom Lee: https://www.youtube.com/watch?v=FnhjJJLQ_0I. Generational peaks cause a bit of bull. Every 20 years ish, when birth spikes are around 40 years old (the 30-50yr old band drives the majority of the economy). We're about mid-cycle for a lot of HIS indicators (even though this expansion period has been super long), not late-cycle and recession-imminent as many (rightly) believe. The millennials are still peaking, yo.
  • VIX = volatility index from cboe.
  • Futures are like options, but you have to exercise them. You can also have futures for sell contracts.
  • Do Italians try to be Italian as much as Americans?
  • Shorts can have infinite loss. Puts are limited.
  • Did a little bit of organization for tradebot.

Monday, November 25, 2019

  • The Ravens have some recent finance grads doing mathematical analytics for playcalling onsides, 4th downs, 2pt conversions, etc: https://www.theringer.com/nfl/2019/9/22/20878730/baltimore-ravens-kansas-city-chiefs-analytics.
  • I'm not particularly impressed by the Farnam Street publication either. I'll stay subscribed for a bit longer.
  • Friendsgiving prep.
    • Wednesday's turkeys will have no garlic/onion for Allie and no pork for Sharon. No more bacon injection :(. I'll instead do a memphis rub (paprika/cayenne/brownsugar/etc) with a butter injection+binder. I'll still throw some herbs on there.
    • Smoked practice turkey and ribs yesterday at remilin's. They were weird. Something is off with the traeger, wasn't getting good smoke flavor. Looked up traeger instructions, we weren't drastically off on anything.
    • Butterflied, separated, and brined all 40lbs for the actual day into legs, breasts, tenderloins, wings. I'm getting much better. You don't need to spatchcock if you're going to separate anyway. Still took about 90min and gets kinda annoying. Super messy. Disinfected the kitchen surfaces after.
    • Read a little more about gravy prep.
    • Went back tonight and smoked a chicken with Remy to test. Cleaned out the traeger firebox, made sure the pellets didn't have any wet rot, ensured that it was started up properly. Chicken was butterflied, with absolutely no other change. No rub, injection, seasoning, sauce. Still weird.
    • Prepped my WSM for wednesday, since I'll be using that instead.
  • Overclocking increases error rates, heating, power consumption, etc.
  • Added video player to chrome.
  • Sempiternal is the same definition as eternal. Lasting forever.
  • Ordered a couple new watches.
  • Elon was in the rick and morty episode from last night!
  • ZYME earned a couple hundred bucks more today.
  • Started using the pea protein. It definitely doesn't taste as good.

Saturday, November 23, 2019

  • Disney+ does not currently support streaming for browsers on linux. I have to use my phone (which can cast to the tv).
  • bmahlstedt.com cert expired because my letsencrypt bot container hasn't been up. It will autorenew once I start it again (likely when I self-host).
  • Sbsc site wouldn't open for cfenton on safari. Switching browsers worked.
  • App emailed properly, even for Bill who had submitted 1 pick instead of 0.
  • Finished Black Mirror.
  • My calm subscription renews annually today (Nov 23rd). The card on file was the old amex, so it failed. I was considering cancelling the subscription, but I do find it helpful, so I renewed with the new citi. It's only $5/mo, and I support the cause/company.
    • My stats for last year: 98 sessions, 20h10m.
  • The kaep situation fascinates me. I equate it with protestors who block roads. You may be right, you may be peaceful, you may get more exposure, but you're going to piss off a lot of drivers.
  • Caught up with Richard.
  • Cal vs Stanford and Wilder vs Ortiz.
  • Friendsgiving prep.
    • Made stock/broth, about 8 cups. Carcass, celery, onion, parsley, garlic, seasoning. Boil, then simmer for two hours. Strain.
    • Slowly combine with about a cup of fat (from another smoke sesh, or butter), and flour, over medium heat. Start with maybe 1/8 ratio (1 cup of flour), then add up to 1/4 as desired thickness. Get up to high heat, then remove. Add seasoning s desired.
    • Injected and rubbed the practice turkey.
    • Thawed the beef and pork ribs for monday's smoke, from which I'll keep the fat/drippings for wednesday.
  • Tradebot.

Friday, November 22, 2019


  • Artgo is a mining company (marble) in China, and was doing incredibly well on the hong kong markets for the past 6 months until yesterday when it dropped 98%. This happens less frequently in american markets, which are way less volatile, but it's still crazy.
  • Cal Stanford football tomorrow.
  • Helped last night with a little bit of the hydra/dispatch frontend to adjust header sizes and scroll position to match the active step.
  • Tesla unveiled its new truck last night lol. It's fast. It's ugly. It failed the window smash tests live.
  • My return on the day for ZYME alone was $968.31.
  • Volume is literally the number of transactions for a security, usually over the span of a day, and usually averaged over a number of days. If person X buys and person Y sells, that only counts as 1. Anything under a couple hundred thousand is usually considered low volume, or thinly traded. They're riskier because you might not be able to sell, or it will have large swings. This makes diamonds in the rough even smaller/rarer.
  • "In order to match the hordes of buy and sell orders, exchanges start with the highest bid (buy order) and try to match it up with the lowest ask (sell order). Because there are usually thousands of bid and ask orders in the system during the trading day, chances are usually very good that there will be little difference separating the highest bid order from the lowest ask order. However, once the trading day finishes and after-hours trading commences, there are drastically fewer participants entering bid and ask orders into the system for a security. Because of this lack of order volume, there is a much greater chance that a big dollar value difference will exist between the quoted bid and ask values for a particular security." - Investopedia.
    • Instead of checking the market price (quote) during afterhours, which is just a representation of the last trade, look up the ask price (or the full list of available asks, which are sell orders). That will tell you what you're going to actually pay for it.
    • Alternatively, place a limit buy order instead of market.
    • You're going to naturally see even higher spreads on a lower-volume stock.
  • Watched Chris Kesser's appearance on JRE, to try to multi-source some suggestions I'd been getting on Medium as well. All revolve around debunking the game changers documentary about vegan health.
    • https://www.youtube.com/watch?v=QNhDHw5F2Ys.
    • He went over the expected. Amino acid profile is important. 1g beef protein != 1g wheat protein.
    • You could achieve the same full profile, but you'd be taking in a lot more carbs, fat, and overall calories. You'd have to eat like 5x the mass of vegetables/beans/etc to get the same protein profile. Not impossible, but diluted.
    • Also, in general, the dogmatic nature of the doc. Rather than educating both sides, and encouraging wise decisions because of X here and Y there, it's clearly biased.
    • Scalability of landsize was an interesting point. Growing edible crops to feed 7.5 billion people isn't possible. It's not as dense as meat, in both production (the input side) and in nutrition (the output side).
    • My stance was unchanged. Eco and ethical impact of meat = bad, fully defensible. Health = good, mostly defensible.
  • Did some TLRA research with Art.
  • Went to All Indian Sweets and Snacks with Remy. That place is delicious.
  • Turkey prep for Sunday.
    • Spatchcocked and started the brine. Separated each half into the 3 cuts:
      1. Leg: thigh and drumstick
      2. Chest: breast and tenderloin
      3. Wing: wing and drummette (no tip)
    • Combined the wing tips, neck, backbone, heart, liver, and all other trimmings while separating the bird. All will be used to make broth.
  • Stock is from bones, broth is from meat. Mine uses both.
  • Upgraded to robinhood gold.
    • Also enabled option trading, allowing me to do calls (buy at strike price later, expect appreciation, long) and puts (sell at strike price later, expect depreciation, short).
    • They give you research reports from morningstar, which estimate a fair value, measure uncertainty, and more.
    • Supposedly this will give level II market data soon, with live bid/ask prices from nasdaq.
  • Played with robin-stocks more.
    • Oh shit you can already get the bids/asks from the api.
      • eg get_pricebook_by_symbol('zyme') - lists all the asks and bids and how much.
    • You can also get the splits!
      • eg get_splits('trex') - will list all of them with dates and multipliers.
    • Full history data is available. This might be better than yahoo finance.
    • The only thing I notice is missing is the automatic calculation of TTM%, and all the dividend yield information.
  • Always gold: https://www.youtube.com/watch?v=nIwrgAnx6Q8. O Fortuna with the wrong lyrics.

Thursday, November 21, 2019

  • Trading.
    • Wow, only 372 people on robinhood have ZYME. For comparison, 232k have MSFT.
    • The most popular is Aurora Cannabis, at 555k holders. The 100th most popular is Spotify, at 17k, so overall there's not an overwhelming number of investors on the platform, but 372 is still very low.
    • Placed another buy order for ZYME to test when the market was open. Ordered @38.64, executed at @38.76. Much better than last night, which had a difference of $1.75.
    • 0.3% slip during normal, 4.5% slip during afterhours.
    • Chobani is doing well, and now coming out with oat products to satisfy the vegans. They're owned by general mills (GIS).
    • White Claw is under Mark Anthony Brands, which also owns Mike's Hard Lemonade. They're private.
    • Truly is under Boston Beer Company, which also owns Sam Adams, Twisted Tea, Angry Orchard. They're public (ticker SAM).
      • Would probably be lucrative to invest in them before they release the new and reformulated flavors, but again, this isn't my choice industry.
  • Numpy arrays are much less resource-heavy than standard python lists, and they can have more dimensions.
  • Jupyter is convenient for the whole "should I develop this code from the interpreter and then copy it to a script, or write the script directly and run it iteratively?" And nice that it can be done from the browser, with graphs/text intermixed with code, for easy sharing.
  • Bought LiB tickets (4-day). $319ga+$43fee.
  • Expected the old Doug song "Banging on a Trash Can" to be all over the place in parody of the Astros scandal, but I haven't seen it anywhere.

Wednesday, November 20, 2019

  • Blogger has a stats section now. Good summaries of views, for the most part. Example: https://www.blogger.com/blog/stats/week/5994952039352729268.
  • You can't ping ports.
  • Supercontest. Updated ross' banner. Committed new lines, submitted picks.
  • T.RowePrice has some good funds: https://www.troweprice.com/personal-investing/tools/fund-research/morningstar-4-and-5-star-rated-funds.
  • Rain!!
  • Tradebot.
    • get_dividend_yield() now has an input arg to specify forward or trailing.
    • Added get_delta(), which is similar to get_slope but does a pure difference (annualized by the timeframe and the delta) instead of a linear regression.
    • Multiprocessed the ttm_slope and div_yield calculators. Full returns take about 8m now. Each individually used to take about 45min.
    • Finishing the total-return analytics, both forward (predictive) and trailing (exact) for the top performers of last year and current+next.
    • Added entry points for both main calculators.
    • Yahoo returns a 52-week change for most symbols, and a yield, but not as much for full history. Therefore the trailing ROI is more accurate (or at least more comprehensive). The forward ROI regresses the historical data, which doesn't exist for many, so it has a lot of empty zeros.
    • Final results.
    • Wes brought up a good point that splits will skew the data.
    • After manually checking the rankings, I bought some zyme (biopharmaceuticals). This is mostly a test to verify my bot, rather than a wholehearted investment. Their charts look fantastic, even beyond the ttm I analyzed, and all earnings have exceeded. Market price was $38.76 when I ordered, and then it executed at $40.49, which is absolute horseshit. I bought 260, which is 10k, and it immediately lost $450. No more volatile slippage. I gotta stop afterhours trading.

Tuesday, November 19, 2019

  • Subscribed to Disney+ with the money I made from the investment in its launch. $70/yr. Sent the login to socal to pay it forward.
    • They have all disney, pixar, marvel, star wars, natgeo.
    • I like how they don't autoplay on hover by default.
  • Donated $5 to wikipedia.
  • The forward dividend yield takes the most recent div, normalizes its period to a year (usually), and divides by current stock price to estimate what the next year's div yield will be (if it stays the same as right now). The trailing dividend yield actually looks at a previous timeframe (usually a year), since it has that data, and calculates the %.
  • Matt Stonie ate 100 waffles in 15 minutes.
  • FF moves. 2 for espn, 1 for yahoo. Not much this late, and my teams suck.
  • Robinhood Gold.
    • Instant deposits? Yes.
    • Instant buying power after sell orders? Yes, if market is open.
    • Instant withdrawals? No.
  • Morningstar is the private research company that provides the yield data for yahoo finance and the advanced data for robinhood gold.
  • Tradebot.
    • Display market cap as millions.
    • Made the $/yr ttm slope ranker normalize on price (at the beginning of the time period, the past year) for %/yr, rather than the absolute $/yr.
    • This allowed me to then sum the growth %/yr with the yield %/yr for total return.
  • Generally agree: https://medium.com/@tmitchelhill73/lets-talk-about-the-game-changers-1d76a0c344e5. There are 3 main targets for a vegan diet: Eco, Ethics, Health. The first two are obvious and clear. The third is not.
  • Went to wing ferno. Got the spiciest they had. Pretty good. The chicken was juicy, but I like the batter a bit crispier.
  • Bought two 20lb turkeys at costco. Butterball, $1/lb, with giblets, no steroids/hormones. Best part: it comes fresh, not frozen.

Monday, November 18, 2019

  • DIS went about +8% on tuesday and then -1 each day through the rest of the week. Decided to hold through Monday, after people lazily watched Disney+ all weekend and shared their logins, hoping for another spike. It happened. Sold everything for a total profit of $650.
    • Worth reminding that I did nothing to deserve this. Got $650 for a couple clicks. I don't like the volatility or the rationale of modern investment. I've contributed nothing to the world through these actions, and I've been rewarded for it. Others have dedicated their lives to the same, becoming billionaires. The spirit of investment is the encouragement of new technologies/products/services/etc. We can do this without public trading, for it corrupts more than it enables.
  • Won both fantasy games. Got 3/5 in sbsc.
    • >64% across the entire league in supercontest, our highest ever in the 2018 and 2019 seasons (except week 17, garbage time).
  • Tofu and tempeh are both from soy.
  • Tradebot.
    • Lots of work. General cleanup. Reorganized all the modules in the package structure. Moved some functions around.
    • Generalized get_valid_tickers() to a simple symbol fetcher, allowing downstream functions to filter on cap/price/etc as desired.
    • The reason some of the slopes were broken is that the yahoo historical data had gaps. You'd request a year, and it would only have a month, and that month might have been a great rise while the rest of the year sucked. To fix this, I changed get_slope() to only return if there is statistically significant data (at least 50% of days in the requested time period).
    • There are ~1200 tickers returned by NYSE for >1b cap and <$100 price, but yahoo only has historical data on ~250 of them.
    • Yahoo doesn't return consistent data. Sometimes there are gaps in history. Sometimes there are not. In a standard run for ttm perf on 1200 tickers, different symbols will report dataframe.empty in back-to-back runs.
      • For this reason, I will not multiprocess the main functions in the analysis module.
    • The stock market (well, NYSE) is open every day except weekends and 9 holidays, so 251 days a year (69%).
    • Changed it to not filter >1B and <$100, just analyze ALL.
    • Finished the entire TTM performance effort. Compared to local plots. Compared to google plots. Everything looks good.
    • Finished the rankings for dividend yield. https://gitlab.com/bmahlstedt-group/tradebot/issues/5.

Sunday, November 17, 2019

  • Supercontest.
    • Pick percentage was sorted on for in-progress and finished games, between cover/push/noncover all complement to 100. Pick percentage was not sorted on for unstarted games. I added this as the second-to-last (num_picks, desc), before user ID.
    • Made the late picks email include the recipients in the body.
    • Updated the app to properly adjust for both sides of daylight savings time, which shifts in the middle of week 9: https://gitlab.com/bmahlstedt-group/supercontest/issues/139.
  • The same FPS looks way worse in games than movies. In games, you produce an image and combine them all together for motion. In movies, the camera's shutter is open for a small period of time, so you get motion blur automatically.
  • Bought a 12.5lb turkey. Started thawing.
  • Astros have been cheating for years, banging on trash cans and whistling for offspeed pitches based on cameras.

Saturday, November 16, 2019

  • Started Black Mirror from the beginning. I had only seen maybe 1-2 episodes (and the movie).
  • This channel is crazy: https://www.youtube.com/user/24619carlos.
  • Tradebot.
    • https://gitlab.com/bmahlstedt-group/tradebot/issues/5.
    • Added fetch/analysis/sort for dividend and yield %.
    • Some are as high as >20%, but it's obviously dependent upon price. Some good standards are around 4-5 (verizon, ibm, etc). The securities in the S&P500 average out to about 2% right now.
  • Banner. Ross 12 Remy 13 Franky 14 Art 15. Only two weeks still available.
  • Only about 10% of both Portugal and Brazil speak Spanish. It's pretty similar to Portuguese tho.
  • Categorization is generally good. We can lump objects into groups, and that is a convenience. It's efficient. It saves time. Those waterbreathing soap bars are fish, those large horseless cars are vans, etc.
    • There's nothing wrong with this, when it's applied to objects. To companies. To Food.
    • There is a problem with this, when it's applied to people, because then the group identity is considered before the individual. A stranger sees a tribe, a color, a language, before a person. It is no longer an efficient shortcut, but is instead a presumption; a presumption about something that can change, a complex human being with free will.
    • This applies to good and bad judgement; I don't like X race, I am patriotic toward Y nation. They're the same presumption, the same categorization, and both ultimately become a bias surrounding an irrelevant generalization.
  • Awesome warriors story: https://www.youtube.com/watch?v=fHeAHaxW0nI.
  • Jim Simons is the founder of RenTech. Net worth >21b. Went to Berkeley and MIT for math.
  • Mackenzie Bezos (ex-wife) is the 15th richest american at 36b, all from the divorce settlement. 4th richest woman in the world.
  • Supercontest. Updated last week's single pick for Jeremy.
    • select * from picks where user_id = 6 order by id desc;
    • update picks set team = 'DOLPHINS' where id = 5927;
  • UFC in Sao Paulo.
  • Kaep did a practice workout today. Switched locations at the end, but footage should go to all 32 teams. Curious if anyone tries to pick him up, considering the underperformance of many starters right now.
  • Made pistachio butter. As of right now, pecan butter is still king but I'll try a bit tomorrow after it cools/settles/separates.

Friday, November 15, 2019

  • Ubuntu was busted. Power died while casting, which crashed the video cards or gpu, then the drivers (nvidia?) were trying to write to syslog and filled the entire disk (used >70GB). Booted into recovery mode (escape during startup, drop into root shell). Ran sudo apt autoremove. Then sudo rm /var/log/syslog.
    • Audio devices just listed dummy output so I had to run `pulseaudio -k && sudo alsa force-reload` to get the speakers back.
    • Had to run `sudo pip install py` in the system python env as well.
  • Went to the getty.
  • Unloaded dishwasher. Cleaned. Shaved. Haircut appointment. Thawed mouse. The usual.
  • Jeop tournament of champs over. Holzhauerrrrr.
  • Python 3's addition for types is only type hints. You can enforce types at runtime with other packages, like this one: https://github.com/agronholm/typeguard.
  • Didn't do a huge comparison to piptools or pipenv or sx-setuptools or req-compile, but there's another hot env/req manager called poetry: https://poetry.eustace.io. Sent to Spencer.
  • Mythology!
    • Chaos.
      • -> Gaia (Terra, Mother Earth) -> Caelus (Uranus, Father Sky).
      • -> Tartarus (underworld) -> Typhon and Echidna (mother and father of all monsters) -> Cerberus, Chimera, Hydra, Sphynx.
      • Charon (ferryman), Harpies, Sirens, Gorgons, and Cyclops are all basically distant cousins in this tree too.
    • Titans (all kids of Gaia and Uranus).
      • -> Cronus (Saturn, harvest) and Rhea (Cybele, fertility).
      • Hyperion (light), Helios (sun), Selene (moon), Atlas (carries earth), Prometheus (trickster, creates man from clay, steals god fire and gives to them, etc), and Pandora.
    • Olympians (all kids of Cronus and Rhea).
      • -> Zeus (Jupiter, thunder) and Hera (Juno, women).
      • -> Poseidon (Neptune, sea).
      • -> Hades (Pluto, underworld).
      • -> Hestia (Vesta, health).
      • -> Demeter (Ceres, harvest).
    • Gods (all downstream of Zeus).
      • -> Athena (Minerva, wisdom).
      • -> Dionysus (Bacchus, wine).
      • -> Hephaestus (Vulcan, fire).
      • -> Ares (Mars, war).
      • -> Aphrodite (Venus, love/beauty, actually from Uranus' nuts in the sea lol).
      • -> Hermes (Mercury, messenger) -> Pan (Faunus, shepherding).
      • -> Apollo (arts/medicine).
      • -> Artemis (Diana, hunting).
      • -> Heracles (Hercules).
      • -> Perseus (killed Medusa).
      • -> 9 Muses (inspired artists).
  • Supercontest.