667 karma · joined July 23, 2011
Mailing list: https://umaar.com/dev-tips/
Video course on Chrome DevTools: https://moderndevtools.com/
[ my public key: https://keybase.io/umaar; my proof: https://keybase.io/umaar/sigs/V4cWz1hm8-M9l5D8L0k47IsOZSJQBDsVThwzMTlqGZk ]
What I don't understand is, how can professional video editing tools trim accurately (and very quickly)? What are they doing differently to ffmpeg?
If do things the "fast way" with ffmpeg, the exported video has random black frames which I think is related to the keyframe issue you mention. If I do things the "slow way" (e.g. accurately) with ffmpeg, it takes a huge amount of time (at least with large 4k videos). But I don't understand how I can drop that same 4k video into Screenflow, trim 1 second out of it and export it in a matter of seconds.
- No JavaScript necessary
- All profile images turned into one massive sprite
- Minimal payload size
Here are what the tweets look like when rendered: https://umaar.com/dev-tips/feedback
Here's the code to achieve that: https://github.com/umaar/better-twitter-embed
I've also tried to visualise worldwide COVID data on that globe, however performance degrades making it completely unusable.
- Noticed excessive JavaScript contributes to poor web performance - Things cause JS to break, which breaks other interactivity, often I end up using incognito
During lockdown, I struggled ordering groceries because 20 seconds of JavaScript execution on the main thread made my "delivery slot" expire!
Similar to heydonworks.com stating "Please disable JavaScript to view this site", I'm glad Hotwire is encouraging folks to think about things a little differently.
Also because of the nature of these features (depending on use case), you can use them in a progressively enhanced manner.
I don't see this strategy being adopted by most websites, but I reckon it's a technique worth knowing about. I've worked on WebGL visualisations where the device RAM played a big role on performance for example.
I remember over 5 years ago, they helped me me visualise 1 billion "Shazam's" (where I was working at the time) onto map tiles. Glad to see they are still supporting developers!
I've always been a big proponent of 20% time. Shazam is the first place I worked at which taught me about them and I've written about it here:
https://umaar.com/blog/lessons-learned-from-working-at-shaza...
It was the way in which I learnt what I'm passionate about.
I've put a few simple examples in Node.js here: https://github.com/umaar/learn-browser-testing/tree/master/3... (just as learning material)
Before: https://www.webpagetest.org/result/201129_Di8J_c734f3b630a33...
After: https://www.webpagetest.org/result/201201_DiG4_230670b40ea6e...
While I'm still using Google Fonts, I inlined all the @font-face declarations into my own CSS files, and was then able to remove the <link> tag (a blocking resource) in the head of the document. Lazy loading images also helped, and using webm for video.
https://github.com/umaar/offline-website-scripts/tree/master...
- Lots of Google products don't work
- Wikipedia looks the same
- GitHub works pretty well, including lots of functionality I thought was JS only
- Amazon seems to work just fine
I've also heard of potential colleagues giving positive sentiment to the hiring manager/boss: "oh that guy, I'm subscribed to his mailing list, he's good".
I've received a good number of offers, and one thing I've started to wonder: are interviewers thinking I'm a great dev because all these little side projects supposedly make me a better web developer? Or are they hoping I'll increase exposure to their brand since I already do talks and write articles?
I hope it's not the former, all the time I spend writing, doing talks etc. it's taking time away (with the exception of software-based side projects) from me learning about the art of software engineering.
https://cloud.google.com/blog/products/storage-data-transfer...
https://umaar.com/blog/lessons-learned-from-working-at-shaza...
1. Try to log onto a channel, but get presented with a "We've detected something out of the ordinary going on. To continue using Discord" where my only option is to verify by phone, which I don't want to do.
2. Occasionally, I'll figure it's worth a try in incognito. I get a step further, only to read "New login location detected, please check your e-mail.". Go back to non-incognito, check email, open the verify link in an incognito window.
3. Instead of finally signing me in, it says "IP address authorized" and "If you followed this link after trying to login on the desktop or mobile app, please go back and try again.".
4. Fair enough, time to log in, again. Submit credentials, get presented with the bizzarely slow fade-in recaptchas. Fail twice, succeed on the third time. Horray! I can see the channel!
5. Finally try those other organisations invite links (in the form of discord.com/invite/org), but get "This invite may be expired, or you might not have permission to join.".
Yes non web devs, or web devs in a rush because of a poorly managed project + deadline I reckon.
Outside agency makes a lot of sense to me.
When you say get out of tech, you wouldn't happen to mean on a ranch would you? Been seeing more and more references to tech folk wanting to escape to such places ha!
Really curious as to why.
A long time ago I would've agreed. But now I think we live in a world where you can land a job with the right sort of Instagram post which goes viral. Side projects can broaden your horizons, increase your network size, put you in touch with that random CEO who wants to interview you because you used their API in your side project.
I agree with you, most hirees still don't care. However the people I've enjoyed working with most in my career had fascinating quirks to them, maybe they do carpentry or maybe they're building a compiler for fun.
Work can drain people, so having a bit of naive optimism that your side projects could help people/make money/land you a job/or whatever, is not a bad idea IMO. Like with anything, one should manage their own expectations though!
My side projects include:
- An Air Quality Monitoring Dashboard
- A leaderboard app built with redis
- A WebGL globe to show live wikipedia edits
- A web service to scrape any number of GitHub stars from any number of people
- A node.js app which extracts 1 second of footage from your media library, and combines it into a '1 second everyday'-style video
- An audio reactive image slideshow from instagram selfies
- A visualisation dashboard to show stats about your blood from some diabetes bluetooth thingymajig
- 3D renders of popular logos, like the GitHub logo
- An Alfred workflow app to trim X seconds from the currently playing video from VLC
- A script which downloads the top 250 websites to your drive, so you can then run other scripts upon them, as often as you want, without getting blocked
- An augmented reality music website (where you can use the webcam to control audio)
I'm really grateful I'm able to do such things and have no intention of stopping.
make vs. npm start make thing vs. npm run thing
But also more importantly, the Makefile itself feels much cleaner, rather than stuffing scripts in package.json files. The thing I'm confused about, why do npm scripts seem to dominate? I don't see many people using Makefiles.
[1] https://github.com/umaar/video-everyday/blob/master/Makefile
I'm keeping the codebase open on GitHub: https://github.com/umaar/learn-browser-testing/ so anyone who wants to follow along can do so for free.
I'm keeping the codebase open on GitHub: https://github.com/umaar/learn-browser-testing/ so anyone who wants to follow along can do so for free.
In the 2-scraping folder, there's a bunch of scraping examples such as bypassing captchas, building an Amazon price checker, blocking CSS and JavaScript resources during scraping to make the process much quicker, and a few others. Hope it's useful.
Fortunately I already have my own platform for my first course, so maybe reusing that would be best rather than assuming the grass is greener, with things like gumroad/teachable.