This is turning into a long post. I hope some have the patience to read it all and help me! (If there's a more appropriate site to put this, please let me know, thanks!
I am passionate about writing computer software but have issues with Windows security. Recent example: Dell shipped Windows 10 computers with two insecure root CA certificates. I'm tired of being at the mercy of Windows moguls. PART 1: NEW Chromebook bought!
I recently bought a Toshiba CB35 B3340 Chromebook 2. I LOVE the screen and the full size keyboard. Also, it has no noisy fan, does not get very hot, and is super-lightweight. It has an Intel processor (Celeron, I think) and 4GB memory. Got it on sale for under $300 at a box store. Super sauce! PART 2: Old Windows hardware failing
My Windows computer is very old. It's a Sony Vaio. It gets very hot, is much heavier than today's laptops, the battery tells me it needs to be replaced, and half of the screen has vertical lines running down it, making me go blind. I prefer light on dark background, but that's much more difficult to see on the broken half of the Vaio's screen. I dual boot with XP, but rarely use the XP side. My Windows 7 system partition is getting very cramped with just a small % left free. I install as many programs as possible to a separate, non-system partition, yet it is still filling up.
I am ready for a new computer, at least for development and internet 'surfing'. PART 3: Dual boot not for me (at least, not yet)
I am loathe to unscrew things on the CB2 and make physical change to hardware I bought about 3 weeks ago. I realize that is the way to go if I want to dual boot Linux and Chromeos. But there's always the problem of getting the drivers right when the native OS is not available for the alternate OS. And also, it is very scary for a newbie such as myself to overwrite the BIOS that came with the computer. A good way to brick it. PART 4: WHERE ARE ALL THE TOOLS?
I find there are insufficient tools to work with on ChromeOS. And the advice "Just use on-line web development left me completely dissatisfied. ShiftEdit just doesn't work for me. I'm not sure of all the details, but basically, when I click "Design" mode on a PHP file, I expect to see the rendering of that php file the way I would see it, with whatever edits I've applied to it. It just doesn't work. It hangs. So, no ShiftEdit. Maybe another clould-based development environment could work for me. That brings me to my second objection with using ChromeOS and clould-based development platforms:
If I go outside a wifi zone, I'm left high and dry and can't get development work done. PART 5: What I use on Windows & will need on Linux
Before I start I need to say that while I used DEC's Ultrix extensively in the early-mid 1990's, that was so long ago that I am not sure that experience will help me much now.
I am a complete newb with Linux and crouton. If I find it is too painful to get this development platform up and running, I just wasted $270.
- Basics: I need the drivers for the keyboard, screen, wifi, sd and flash drives, and enough hard disk space. These are basic operating system resources, but in the past when I have used Live Linux distros on machines made for Windows, the lack of correctly operating hardware just killed any joy in using Linux. This was a while back. I'm not great with finding drivers and getting them installed correctly, so I will definitely need help with this most basic aspect of getting Linux to run. I don't really know where to turn to for instructions, and initially, since I'm very new to this, a little hand-holding.
Also, I don't know anything about how to secure the crouton, other than I should use "-e"
One serious sticking point: This Chromebook only has 16gb internal SSD drive
, and out of the box, less than 10 GB of it is available
to me. I strong believe I need to put the crouton on external media.
- More Basics: Folder and file manipulation.
- ChromeOS can't find duplicate files across multiple folders. I am talking about files with the same contents, but not necessarily the same file names. (There's supposedly one for Google's Drive files, but reviews leave me doubting it will actually do the job correctly) There are multiple duplicate file finders on Windows and I'm using one. It's extremely helpful to getting junk off the system. What do you use on Linux?
- ChromeOS does not have a tool (gui or otherwise) to recursively compare (and potentially merge) two folders side by side. I use WinMerge on Windows. What could I use on Linux instead of WinMerge?
- There does not seem to be any decent FTP client on ChromeOS. I looked in the store and found one from the UK but the reviews scared me away. I use FireFTP on Windows. It's great because I can download entire folders at once, AND IT SYNCHRONIZES my development work back onto my live server. I can't pick and choose which files to upload, delete, or modify remotely. Btw, I spent a lot of time writing a php script to run server side which will pack up all my files into a zip file that I can download. But really, that is not ideal. It's only a very tiny piece of the puzzle. The downside of FireFTP: I'm not sure how to get FireFTP to preserve last modified timestamps on my files. I probably just haven't found the setting for that. That would be nice. What would I use on Linux instead of FireFTP? (Is it difficult to install Mozilla FireFox and FireFTP in the chroot?)
- Although I don't do this, I should: "Freeze" the copy of the live code somewhere in the development environment, just in case I erase something or mess something up in my development copy and need to look at what is running live. If I did this right now on Windows, I would probably use 7zip, but regular zip would probably also be fine. What would I use on Linux? It needs to be simple, and not get in my way. As I said, right now I'm living without this, but I should really be doing it.
- Find a text string recursively in a folder. Be able to specify the types of files, or the file extension. When I moved to Windows years ago, I found that it's recursively file searching was not as good as Ultrix's. Over the years they improved it, with it's peak on Windows XP. Now, I use TextPad (my code editor) to find strings in folders due to lack of sufficient tools in Windows. I usually don't need regex searching, but it is very handy to have it from time to time. I seem to recall 'grep' was very useful back in the day. Has it been superseded by something better?
- Capture screenshots
- Back up and restore in case of emergency. I already have an SD flash card from which I can restore ChromeOS. But after I do that, I have no clue how I would get my chroot back, assuming I had even figured out how to back it up correctly.
- Beyond Basics: The actual development tools
- I use Mozilla FireFox on Windows. Use it to test HTML and JS code. It has a console and debugger, very handy. I also have been able to use the Chromebooks native console and debugger and found it handy. I assume I'll be able to to install Firefox in the crouton. (I am worried about space)
- On Windows, I use QuickPHP for testing my PHP code modifications. For the most part, it works. What would I use on Linux?
- Currently I am using TextPad from Helios. It is a good code text editor. Has regular expression matching/replacement, bracket matching and HTML tag matching, syntax coloring/highlighting. (I vaguely remember using Gnu Emacs way back when but I want GUI.) I want at least all of the features I have now with TextPad.
- I don't need it yet, but eventually I will probably use a database on my live site. Were I staying on Windows I would check out WAMPserver and XAMPP. Is there a built-in LAMP stack in the crouton? If not, can I get one? Is it difficult? Again, I am worried about disk space on the internal ssd drive.
- Eventually I will probably want to explore server-side coding using Node. Is there a way to do that on Linux? (I don't need details now, just need to know if it is out there)
- Not yet, but: Compilers, interpretors, etc for marketable programming languages. Right now PHP, HTML, and JS (and eventually JQuery) are fine. Eventually I'll want to go beyond them, to language which have already arrived, not ones which are taking years to catch on, or which might fade away in the next few years.
** PART 6: FIRST ATTEMPT FAIL** My first attempt to install Crouton failed. It ran for hours and hours until finally I had to go to sleep. When I woke up, the install was stuck. So I restored the system from the 4GB Flash Card I'd made. (It's a "swanky" restore "disk")
I believe it failed because I was trying to install to a 32 GB MicroSD card, and one of three things was wrong * 1 I'm brand new to this and screwed something up or * 2 the microsd card is too slow or * 3 the mostly plastic 'converter' to turn the microsd card into full size SD was too slow. * 4 I did not correctly reformat the microsd card (I used MiniTool Partition Wizard free, I think I formatted it as ext2)
** PART 7: ONE MORE TRY** I want to give this another try. I think I need to buy a fast external storage media, with MINIMUM of 32GB but I'm leaning toward 64GB or even 128GB in the USB 3 port. Anyone card to share experiences with this? What do I need to do to succeed this time?
I really love the 'form' of this new laptop and would like to keep it, but right now it's more or less like a clunky tablet I didn't need (since I already have one) running an operating system that has barely any apps for it, unlike iOS and Android.
If I fail again, is there a market for this stupid ChromeOS thingy where I can get most of my money back for it?