Interesting that you can do everything on a Pi Zero. What desktop environment do you run? How does web browsing work on something like that?
A decade ago I wanted to develop some games, but I knew next to nothing about computers or programming. So I decided to buy a $1000 Dell PC, mechanical keyboard, two monitors, the works. After the computer arrived, though, I didn’t exactly get started right away... actually, it took nearly a decade! Life just got in the way.
I learned a lot of programming over the years, though. But after my master's, I joined a company that programs a computer vision system in robots whose controllers have only 256MB of RAM, which we only get a sliver of (probably around 30MB). This forces frugality upon us programmers; rules like "Don't use 4 bytes when you can use 1", "Make loops as tight and quick as possible", "Simplify math operations", "Try to use integer arithmetic instead of floating point, but use bitwise operators instead of integer arithmetic when you can", "Make everything reusable to save others memory and development time", etc. The end result is exceedingly fast and light, yet it does everything our competition does and more. It's even competitive against its open source counterparts out there that devour a thousand times as much memory and run 10-1000 times slower. (It's worth noting that my robot company has zero debt, thanks to the super lightweight hardware we use in our robots. We don't cut corners with easy-to-develop bloatware... We hand-craft and optimize everything in C. No debt, minimal liability, we saw no layoffs nor pay cuts during either COVID or 2008 recession... Our higher ups' handling of money is such a beautiful thing that we're all grateful for.)
That inspired me to go home, tear apart my Python game engine, and redo it in C. The goal was to produce 2D games that take up extremely little space, have no loading screens (the player is transported to each new scene in the blink of an eye instead of seeing that annoying "Loading..." text), and poses restrictions on the developer, inducing creativity. My tech-savvy cousin and I always reminisced over how simple games like Pokémon whose ROM would take up only 512kB, and yet it captivated the attention and inspired the imagination of MILLIONS!! We'd also marvel at how fast 8- and 16-bit systems in the old days were, how they didn't have any wait times while we have all kinds of waiting to do in our mega spaceship 64-bit quad-core systems-- it just makes no sense. So what else could one do with so few bytes? And what value could I squeeze out of a computer about as weak as our robot's? I wanted to know, and so I started down a new road.
I think Mustachianism collided with this journey at some point, because I started wondering, "What's the cheapest, most energy-efficient machine I can make all this with?" So I began playing with a Raspberry Pi Zero W. Linux command line blew my mind away... I discovered tools every bit as capable was the mammoth Visual Studio I was using— Vim, gcc, gdb, etc.— and would only take up 0.001% as much memory as VS. (Visual Studio would take upwards of 750MB, while vim nibbles a measly 12.5kB.) Vim, however, has just about all the commands VS has, and once one learns his way around the shortcuts, editing files and compiling them is even FASTER! Compiling my source code wasn't painful at all on the Pi, and they sing like a bird when the run. So the potency packed into this tiny yet feisty machine and its mega-lightweight OS were simply an insult to the old mega spaceship development environment.
Then I discovered I could even make music and images on other super lightweight applications through the VNC server!! I was elated when I discovered this. I’d never dared to dream before that I could replace a $1000 machine with a $10 one; that sounded just ridiculous. But the possibility was getting real now. Automatically backing up things nightly with github and cron, setting reminders for myself through calendar, making a simple chatting application for my cousin and me, a bot that does my dating apps for me with cron, nodejs, and zombie, I listen to the radio on a bluetooth speaker through it, browse and download podcast episodes and listen to them, etc. etc. etc.— the list goes on and on. That’s only what I’ve squeezed out of $10 *so far*. And meanwhile, I've sold my old machines for $500, which in turn went straight into the stock market. What a sweet deal. Also, my computational liability now follows my company's example; it's 1% of what my desktop PC was, and the power it draws is only a fraction of a percent!! Again, what a sweet deal!!
I’m simply blown away by the amazing things the free Linux OS (and all its free variants) and the Raspberry Pi developers have enabled us to do with chump change. I post this to get my enthusiasm for this out of my system, but also in hopes that someone else will realize how many options they have even with such a tiny, cheap machine, and not need to burn through big wads of cash to bring powerful automation and computing to their lives.
Real mustachians only code in hand optimized machine code. 80. Everything else is a waste. Future mustachian coders use assemble language as training wheels.
As a non-tech person, your post was pretty much like speaking in Latin to me but I appreciate your ingenuity. :)
So basically you are doing some fun projects on the Pi, but you haven't completely replaced it as your only computing device.No. For my purposes, it completely replaces my old machine.
My favourite ever games as a kid were Sonic the Hedgehog and Super Mario on the Sega Mega Drive and the SNES. 16 bit or something they operated off. Seems like they ran off no capacity at all.You know, Sonic on Sega Genesis was an amazing feat. Get this: Its ROM size was 1MB. So that incredible game was about 0.5% of the nominal phone app size you mentioned.
Real mustachians only code in hand optimized machine code. 80. Everything else is a waste. Future mustachian coders use assemble language as training wheels.Very funny. But variants of this sarcastic remark are parroted all over the Internet-- sometimes rightfully so (e.g. in response to "I want to rewrite Destiny 2 in Assembler [to stroke my ego]"). Generally, however, those (oftentimes myopic) cynics are the very propagators of bloatware. They encourage companies to rushing super-sized products out the door so people have to pay ten times the amount for machines that can handle them.
Very Cool, I love your focus on efficient coding. That skill is becoming a lost art form these days. The amount of lazy shortcuts and software bloat which keeps driving the hardware race gets to me. It's one of the reason I love virtualization and consolidation of compute processing in day job..
The 8GB Pi4s aren't in stock anywhere right now that I can find (at least not for anything resembling retail price). Wait for the next run, or grab a 4GB one.https://www.canakit.com/raspberry-pi-4-8gb.html has the next board-only shipping July 15, 2020. They have 8GB kits in stock (getting the complete kit for my older kid).
I have accumulated a pile of Pi's over the years and and have a RPi4 running Ubuntu Server using Docker and it is a beast...so capable. I discovered VIM during this pandemic and have gotten really familiar with command line again, which I do find efficient.Thanks for that info nugget, decide to use the USB 3.0 storage port on my Nighthawk router as a power feed to the RasPi.
Pi-Hole is probably the best use of any computer if you are going to use the internet, haha! Running Diet Pi on a RPi3 is so freeing and it powered by the USB hub on the router itself...I recently relocated and I'm on guest wifi; I forgot how dirty the raw internet with advertisements.
After reading this thread decided to look into the Raspberry Pi a bit further, and I made the switch..One of us! One of us!
Been WFH for about 4 months now on a laptop (roughly 1000USD at the time), and replaced my laptop with a Raspberry Pi 4 which functions as a thin client. Works like a charm.
Added benefit is I get to explore Linux for a bit.
After reading this thread decided to look into the Raspberry Pi a bit further, and I made the switch..One of us! One of us!
Been WFH for about 4 months now on a laptop (roughly 1000USD at the time), and replaced my laptop with a Raspberry Pi 4 which functions as a thin client. Works like a charm.
Added benefit is I get to explore Linux for a bit.
Glad to see you're enjoying it.
Lots of Raspberry Pi forums and projects on the internet.
My pi-hole has reduced the network traffic by ~37%. That's the nonsense overhead of trackers and ads.
If you had a bandwidth cap, imagine a third of it used to track your online activity and bombard you with targeted ads. Ridiculous!
since all traffic will be directed through the pi-hole as a DNS server, you'll want the ethernet port.
Can PI be used as a remote computer? Similar to vpn but without actually using a VPN. For example, your PI is in Arizona and you log on from Florida, then remotely use your Arizona computer with an Arizona IP address.
The great thing about the Pi's are the GPIO and how easy it is to control the I/0.
Which is why you'd want something other than a Pi as a desktop PC. If you want to develop code and use the Pi as a method of controlling IO, then it's perfect.
Respectfully, personally I can't use a system that can't even do YouTube without dropping TONS of frames as a desktop replacement.
Will using a higher end SD card make a big difference?
Respectfully, personally I can't use a system that can't even do YouTube without dropping TONS of frames as a desktop replacement.
The only kind of significant issue I ran into when trying to help him get specific software was that Pi OS is still apparently a 32-bit operating system? So certain software that required a 64-bit kernel doesn't run on Pi OS.
Will using a higher end SD card make a big difference?
I do have a spare 128GB SSD somewhere too, hopefully my Pi does USB boot :)
Although now I'm leaning towards a NUC or Asus PN50 and sticking with Windows 10.
What about the Gemini Lake Celeron/Pentium chips? Worthwhile or garbage?
Ew. :pFTFY.Windows. Windoze.
Can I use a 8 GB RasPi4 to drive my son's Creality Ender Pro3 3D printer? We currently only have a Chromebook for three kids. Would like a desktop that is more geared to them learning and practice STEM-y things.Maybe this will help?
Respectfully, personally I can't use a system that can't even do YouTube without dropping TONS of frames as a desktop replacement.
It should be able to do it, so perhaps look around for advice on doing it. I think it requires getting the hardware decoders working in the browser, which is far from a trivial task, but I thought stock Raspberry Pi OS or whatever they're calling it these days had it configured to work. I'm not sure you'll ever play a 4k video on a Pi, but lower res stuff should work fine. I know a pi3 can play 720p stuff smoothly enough, though I'm not sure if it's doing software or hardware decoding. My Pi4 just tends to be... a bit experimental, and I definitely ruined video playback at some point.