Welcome to America: Here's Your Linux Computer
opensource.com
opensource.com
Even something like a raspberry pi would be more than enough for someone like a kid who wants to learn and just needs a means to do so.
I never could afford a computer as a kid growing up. All my computers were donations or throwaways that I tinkered with and learned on and fixed up. My first computer was an SE/30 that was getting thrown away. I ABSOLUTELY would not be where I am today if it was not for the kindness of others who gave me the opportunities to tinker and learn.
To share a somewhat related story: My first computer was a C64. It was given to us (two brothers and me) by my parents. We were not rich. Lived in a low income neighborhood. Education was important to our parents. But, the funny thing is that we almost got a Nintendo! My oldest brother suggested the C64 instead. I was furious (six years old at the time). My first code was written in that wonderful machine.
It doesn't end there! I had a hiatus from computers when the C64 broke! My middle brother had bought a computer for college and I wanted one. Well, he didn't use it that much. I had an old car. I traded the car for the computer. I met my wife through that computer. Not only that, but it allowed me to connect to the web and learn about software. For which resources were not available where I lived. :D
1. https://laizalibrary.org 2. http://time.com/3598969/kachin-independence-army-kia-burma-m...
They have programs for volunteer work in refurbishing (where you learn about computers) get your own system in return.
Ken Starks gave a heart-touching presentation on Reglue at this year's LibrePlanet conference (and accepted the FSF's Award for Projects of Social Benefit on behalf of Reglue). Unfortunately, the recording of Ken's presentation doesn't seem to be up on the LibrePlanet site, but I'm fairly certain that mtjm.eu has it somewhere.
http://bookblog.kjodle.net/2011/06/he-said-she-said-the-fine...
Now compare this to the original:
"They don't speak much English yet, but maybe the public library will be a useful resource for them," she said.
"Do bring them by here regularly. If they are interested in self-advancing their learning, the public library is the perfect place for them to do that. Do your kids have their own computer at home?" I said.
"No, they currently borrow my laptop, which is not such an ideal situation."
"Tell them they're getting their own donated desktop computer on Monday next week. I'll prepare it for them over the weekend."
The onscreen keyboard works great for typing both in portrait or landscape. You just have to get used to it. Keyboards are mostly a hastle to drag around/setup and they break.
If I was on my laptop I would ssh in on a slightly larger screen.
You can definitely do word processing, spreadsheets, the web, programming, everything on a $100 (or even $50 in some cases) Android tablet. I haven't used my laptop at all in like 4 months.
So I would get slightly used Android tablets and give them out to kids.
I actually don't want to buy another laptop or desktop because I know it will waste electricity and it seems primitive.
The next major shift for me will be to full-time VR for work, which will use Google Cardboard or their new 6dof thing (I might wait until the Android for VR OS comes out next year). But that is still going to be on a phone..
1. Your particular computing experience vastly depends on what type of connectivity you have access to. Some people, for example, don't even have access to broadband.
2. Computing needs vary from person to person. For example, using spreadsheets for financial analysis isn't ideal on Google Spreadsheets, not because it's impossible but because a lot of plugins tie into Excel.
Now, I'm not saying most things we do now on a more powerful offline/desktop won't ever be eclipsed by their online counterparts, it's just that we're not there YET.
I'm with you on the VR setup! Can't wait to strap on some VR goggles and do all my computing there!
Share in the nostalgia.
The shitty computers of yesterday were amazing.
Today? It does the job beautifully. But there's no soul.
So I did. Upgraded from Windows 95 to Windows 2000. Saw that the modem broke (was some cheap WinModem that Win2000 didn't support anymore), but was happy that it ran a somewhat-modern operating system at the time. Then switched to Win98SE to get the modem working again (which not only failed at that task, but also caused the sound to not work). Switched back to Win2000, then DOS 6.22 + Win3.1, then Win2000, then DOS + Win3.1, then Damn Small Linux, then FreeDOS, then Softlanding Linux System.
During that time, the power supply partially failed (would hang if taken off AC power, even with a healthy battery), the CD-ROM drive got buggy, and the lid had a hard time staying up. It finally died a few months ago (fans spin, but nothing on the screen and no floppy drive initialization; perhaps the BIOS went kaput for some reason?). It's like your dog dying; it's something that you come to expect as the years add on, yet you're never really prepared for it. Yet, unlike the death of a pet, at least there's some hope of figuring out which part it is I need to replace.
Thus, it's only a matter of time before I fix it again. I'll never give up on you, buddy, 'cause you never gave up on me.
I loved both of those computers more than any I've had since.
Now I have a daughter. She won't be getting a Mac. She'll be getting an old box with some flavor of Linux installed and she's going to learn how to really use a computer (only if she's willing and interested, of course). The apps and windows will be there, but I am primarily going to focus teaching her command line and code. Otherwise it's just a gadget and a lot harder to love.
What do you think is shitty about the donated PC?
Heh, strong murica-factor.
outside of the technical and educational benefits they get, it also is makes them feel more welcomed in their community, and more willing to engage.
We've been doing "here's a linux distro on some old windows hardware" for literally decades now. It just won't catch on, especially in the age of mobile where people want less technical hassles, not more. A cheap/used android tablet with a BT keyboard is probably the low price leader here and will probably also keep someone from rushing to an idevice immediately. A $30 Chromecast turns your TV into a giant monitor as well.
You could try out one of these with a Bluetooth keyboard? They are somewhat sturdier than other tablets and have some OLPC-inspired software, plus whatever else for Android you can find. There are other Android kid-targeted tablets around, but they are all more expensive, afaik.
If you were struggling financially, which would you rather receive: a free, full featured computer, or advice on where to buy a cheap android tablet?
If anything, Android and ChromeOS are good examples common users don't care about GNU/Linux userland, rather a packaged experience. Which none of the distributions has been able to provide so far.
And yet, this is how I started when I was 12 years old. We had a 386SX-25 with 4MB RAM and a 40MB hard disk running DOS/Windows 3.11. I couldn't afford a commercial compiler, I got a magazine with Slackware 1.1.x, and installed it.
I took some years before I got further than writing some basic programs. But I read any documentation I could find (IIRC it had the TLDP HOWTOs on the CD-ROM), and not much later there was a Dutch book about Linux on the market. Halfway high school, I knew enough about networking and UNIX that I was paid to set up and maintain servers/firewalls, etc. at my school.
Sure, 90% of the people will probably buy an iDevice or Android tablet. But lets not forget that there are also tens of thousands (if not more) whose technical interest was ignited by installing Linux on an old Windows machine.
Me, I am still thankful to Pat Volkerding. I would probably be in a different place without his (and others') heroic work.
They're definitely making more than one step in the right direction.
OS X is also a sickly sweet gateway drug to living their iDevice lockdown lifestyle. They are continually doing things to lock down OS X with secret APIs that only Apple can use and that 95% you're talking about will one day figure out who Apple really is. I hope you enjoy being their sales-person until then!
However, I think they've done good for the *nix community. At it's simplest, the switch for a dev to go from mac to linux isn't as drastic as from windows to mac; much of that command line experience transfers over.
I think people will move away. I've already moved most of my dependencies to linux, and I've been a lifelong apple guy.
Why, just today i was trying to open up one of their keyboards and had to hunt around for a screwdriver that'll work, because they use security screws. Pretty much everything they do is anti-tinker and that's measurably holding back members of society from advancing our species; they seek to prevent the very same kind of conditions that permitted them to start apple in the first place; a pretty baffling behavior, least of all anti-social.
I have totally fallen out of love with apple nice to look at shit to use for profesionals.
I thought iDevices meant only iPads, iPhones and iPod Touch(es?).
Even if they switch...so what. They got a free computer and a chance to learn a lot. That's a pretty awesome head start.
I also hope that the library has some nice "here's why programming is awesome and here's the books that'll get you there" type of course set up :D
Now, we need some beneware that infects every machine on a network, backs up file system, and reinstalls the os with linux, wouldn't it be nice! LINUX!
More constructively, I wonder if recent Linux distros and desktop environments actually run better on 10-year-old hardware than Windows 7. My guess is that GNOME 3 and Unity require roughly as much CPU power and RAM as Windows 7. If that's the case, then maybe kids like the one in this story would be better served by a donated Windows 7 system builder license to go with that old hardware. Then they wouldn't be frustrated at a thousand points by someone's well-intentioned but misguided choice of OS.
The only people I heard complain about Linux were in the middle range of computer skills. Not so casual that they didn't care, but also not so good that they could easily grasp Linux.
As far as day to day use goes, modern desktop Linux environments are just as usable by end users as Windows.
The main impediments to adoption tend to be:
1. Software that they need that only runs on Windows or OS X
2. Syncing to devices like iPods or iPhones
3. Lack of easily accessible support infrastructure for when things go wrong, major version upgrades, etc. You can generally take a Windows machine to Best Buy or some other local computer store, or a Mac to an Apple Store, and they can deal with it, but there's little accessible support for the complicated cases on Linux unless you have a friend or relative who's into Linux.
4. Lack of support by IT departments.
So if you have a situation like in the original story, where someone is willing to provide that support voluntarily, and you just need a home computer with internet access and no specialized software, a modern Linux desktop will do just fine.
> My guess is that GNOME 3 and Unity require roughly as much CPU power and RAM as Windows 7.
Lightweight desktops like LXDE and XFCE can run fine on older hardware, and are much lighter weight than Windows 7. If you read the article, you would see that it was running LXDE, not Gnome or Unity.
Have you seen a non-programmer install a printer on a Linux machine? It's terrifying.
[1] The modern desktop-oriented distro I'm more familiar with. I'm sure other user-friendly distros handle it similarly well.
I'd say I had worse wifi issues with Windows than Linux.
Yes, I'm fully aware how broken Windows' wifi implementation is. NetworkManager, however, tends to make the Windows equivalent look wonderful in comparison.
And yes, every operating system has problems. That's not my point. My point is that we (the free-software-loving community) can do better than the current state of NetworkManager. It's the one pain point that seems to be pervasive across GNU/Linux distributions, and pretending that "oh, every operating system's wireless stack is broken, so we shouldn't be worried" is delusional. Even if NetworkManager is "just as bad" as the others, why shouldn't we be striving to make something better?
Whatever the case, I know it's not the hardware; wpa_supplicant (the underlying software that allows NetworkManager to function) has (in my experience) generally worked much better than NetworkManager, and OpenBSD's networking stack is also pretty flawless in my experience. So it's something about NetworkManager specifically that needs to be fixed or replaced.
And note that my criticisms about networking are not about Linux as a whole; on the contrary. My criticisms are strictly about NetworkManager. You probably understand this already, but your comment seems to be phrased in defense of GNU/Linux as a whole as if I consider the failings of NetworkManager I've experienced to be the fault of the kernel or somesuch - which is very much not the case - so I figure it's worth clarifying just in case.
In essence the developers involved are attempting to encode every use case they can think of into the program logic, and anything outside of that gets met with a "why would you want to do that?!".
Have a new Cent7 install on a laptop at home.
I spent over an hour trying to get the wifi to simply connect to the network. Much of this was me trying to learn how to use the networkmanager syntax which is neigh-on-impossible to decipher. The help is useless, and apparently the syntax made a huge change from 0.9 to 1.0, and not knowing either means that 90% of the hits I found on Google were utterly and completely wrong and used deprecated flags.
I finally broke down and tried to use nmtui to solve my nmcli woes, but it only made things worse.
The installer was nice enough to create an ifcfg-<myssid>, but when I try to ifup that interface, the system complains there is no DEVICE for it. So I added a DEVICE= line corresponding to my wireless adapter (which nmcli sees), but then the system complains that my wireless device (WHICH NMCLI SEES!) does not exist.
I believe I have traced the problem to a bug report I found on RedHat's bug tracker -- I needed NetworkManager-Wireless installed in order for it to use my wireless adapter. Why lspci sees my adapter, the OS names it, the firmware is installed and up to date, and nmcli even sees the adapter as a wifi adapter, but then can't use it, is beyond me. nmcli wireless scans constantly failed (which is what led me to the bug report).. the bug report says it's fixed and provides better guidance that you need NetworkManager-Wireless installed as of <some version> but that's probably wrong, since I have the latest Cent7.1 (unless the bug report is REALLY recent).
Regardless, after adding the EPEL repo and installing the wireless-utils package which provides the iwlist, I was able to scan for wireless networks.
NetworkManager still was unable to scan, so I did a network restart hoping I could solve the issue without rebooting the whole box. Sadly, I lost my wired connection to the system at that point, so I'll have to wait until I get home to play with it some more.
Oh, and by the way -- even though my wired i/f is set to "ONBOOT=true", it did not, in fact, come up on boot because the cable was disconnected. After I connected the cable it took me 5+ mins to realize I had to restart the network service to get the connection to function, which is not the way it works pre-NetworkManager.
Suffice it to say, the software is massively, massively, massively, massively sub-par, and far less user-friendly than the good 'ol "editing text files" way. I suspect I am soon to have many more similar headaches as I delve into the world of systemd head first (another thing I've been avoiding).
Fortunately, we get to do really exciting things now that NetworkManager has taken over. I can CD to things, and set properties and methods, and all kinds of shit that makes me feel like I'm using Fujitsu's deplorable ALOM:
nmcli> goto ipv4
nmcli ipv4> describe
Available properties: method, dns, dns-search, addresses, routes, ignore-auto-routes, ignore-auto-dns, dhcp-client-id, dhcp-send-hostname, dhcp-hostname, never-default, may-fail
Property name? method
nmcli ipv4> set method auto
nmcli> back
see how fun and intuitive it is?
If someone figures out a way to port Android's network management system (I'm not sure exactly what it is off the top of my head, but I know it uses wpa_supplicant and that it's not NetworkManager) to general-purpose GNU/Linux distros, that would be a godsend.
The more common issue with passwords is that it incessantly prompts for the user's password or for the wireless network passphrase due to some strange inability to talk to whatever keyring daemon is in use (and thus an inability to retrieve network passwords). I usually work around that by disabling the keyring (either globally or simply preventing NetworkManager from using it).
EDIT Also it doesn't actually need the password seeing as I never type it in and my wifi works fine (with multiple networks every day).
1. Makes fixed wireless connections less reliable. I plugged an LTE modem into a server for a backup link, and network mangler set it as a default route and munged up resolv.conf. My mistake for not removing it when I installed the machine, but that's hardly an endorsement.
2. Makes complex config out of reach. On my laptop, I'd like wlan0/eth0 to be bridged by default so that I can easily switch existing connections to a wired connection by plugging in. But I'm not going to fight network mangler just to get this feature.
3. Furthermore lots of times I'll want to setup an ad-hoc config on the wired interface (say, configuring a new router). For which it's easier to kill -9 the mangler and setup manually, especially if I want to keep my Internet connection.
4. GUI is the preferred way to config/interact with it, which is completely un-unix. It's one of the few things I have to do manually when reinstalling a machine.
I played with Arch a while back, and wicd felt much simpler and more straightforward. Network Mangler feels like a hack someone came up with to setup a simple wifi connection, which then got adopted into a bigger role than it can handle.
One of my main machines right now is an old HP workstation laptop that came out when Vista did. I can't run recent versions of Windows due to driver issues (random blue screens apparently due to the wifi driver; I only had a key for Windows 8.1 and the drivers were incompatible), but I can run Ubuntu perfectly fine out of the box with no special configuration required. In my opinion that is the biggest advantage to running old hardware with Linux - as long as you're not using oddball hardware there's a great chance it will run better than it would with Windows.
Now, I won't use myself as an example, because even though Linux fulfills almost every need (gaming, watching videos, programming, browsing the web, printing, burning DVDs), I'm aware I'm a power user. So it's probably not useful to mention I haven't used a Windows computer at home in more than a decade.
Therefore, I'll use my mom as an example instead: save a few exceptions, I could simply replace her laptop's Windows install with a user-friendly Linux distro (such as Ubuntu) and she wouldn't even notice. Maybe I'd have to tweak it a bit and install some useful software, and explain what some of the icons mean -- which is exactly what I did when I first installed Windows on her laptop. Honestly the biggest hurdle would probably be explaining to her the differences between LibreOffice and MS Office.
I don't usually get asked to set up computers more than once :)
Those people are not replacing their PCs. They are buying mobile devices. PC sales have been in a multi-year decline, and sell at about one-fourth to one-third the rate of mobile devices.
I have a 7 year-old Dell laptop that wouldn't run Vista with anything like acceptable performance. I installed Debian/KDE and performance is absolutely fine.
The only tricky bit (as other comments have pointed out) was the wireless device driver, which I had to download from the Broadcom website.
This depends entirely on the desktop environment / window manager.
The machine described in the article uses Xfce. As a real-world example of its low requirements, I very recently setup an old Dell laptop running openSUSE 13.2 with Xfce; said laptop has a single-core processor and somewhere between 512 and 1024 megabytes of RAM (I forget the exact number). Runs like a champ, while a "modern" version of Windows would - in my experience - choke even with much more resources at its disposal. I've also run Xfce-based setups on even weaker hardware, though at that point you start to run more heavily into performance issues.
You can go even lighter than this, of course, by switching to a plain window manager instead of a full-fledged desktop environment. Tiny Core Linux, for example, uses FLWM (a lightweight FLTK-based window manager); combined with its use of busybox instead of the GNU userland, it's able to run on as little as an i486 and 42MB RAM. That's a bit on the extreme end, though, but going a bit bigger than that, I've had good experiences with Openbox (and similarly lightweight window managers) on a full GNU/Linux system running on systems with Pentium II processors and less than 256MB RAM.
Heavier desktop environments like GNOME, Unity, and KDE certainly have additional performance impacts, especially due to their heavy reliance on compositor effects. However, in most circumstances, a system with 1-2GB RAM and a mid-200x single or dual core processor will handle these fine. In the case of KDE, you can also turn off desktop effects, thus reducing computational overhead even further.
In the Windows world, you can generally get a system comfortably to the same realm by turning of Aero (in the case of Windows 7). I'm not sure what the customization options are for Windows 8/8.1/10, but I expect the option for a "Windows Classic" look/feel still exists, and I further suspect that it would allow some additional usability. However, in my experience, Windows is quite prone to slowing down over time; even with routine maintenance (defragging non-solid-state drives, running CCleaner, etc.), performance will typically degrade over several months to a year after installation. For newer hardware, this isn't a huge problem, but for older hardware, this becomes a significant obstacle to usability that GNU/Linux and BSD systems don't typically have.
But, I haven't booted to Windows since mid-April (and even then my Windows adventure lasted for like one hour or less, I just got bored and wanted to play one game I haven't played in a long time). elementary just gets the job done and it looks pretty damn sexy while doing it.
My laptop is currently running on 59 degrees Celsius. It's been up for 22 hours now and its running Firefox, Thunderbird, Spotify, Atom text editor, MEGA client, terminal emulator and a .pdf viewer ever since I booted my laptop. Of course, I didn't use it the whole time, but my laptop was still running while I did some other things. I can't even compare that to Windows (8.1) that jumps to 75 degrees as soon as I boot into it.
Plus, elementary looks like 10x as better and I don't have to search the web to find something like a freaking C compiler or a SSH client. I don't have to worry about the registry and I don't have to worry about junkware being bundled with some piece of legit program. I don't have to click on the freaking Next button for 15 times to install something. All I need to do is to enter one command and enter my password.
I don't really consider myself as a programmer.