Inspired by: https://www.reddit.com/r/Python/comments/w46m73/how_far_could_you_get_without_google
That's still the case, but it feels like today's software development reality is different. There are endless frameworks, apis, devops methods, scalability concerns, and n+1 standards with which to integrate and keep up to date on. Knowing your language is only about 25% of the battle, and few projects are developed in a vacuum.
It's not possible to keep track of all those things, so endless internet searches are the end result.
Had a lot of dog eared O’Reilly books, now I haven’t bought a technical book in over a decade!
Btw, You could cut out google and go straight to stackoverflow, just saying.
The hardware sucked, but we didn't have to worry about anything other than putting characters on a screen, eventually VGA graphics if we got fancy. There was one platform, the IBM compatible PC, and that was the only one I worried about.
We didn't have GIT, we had PkZip, and a stack of floppy disks with labels like "Source Backup v42 2/3/89". If we made a mistake, we had to manually revert.
I wrote "OverSeer" - a program that managed the inspection of Fire Extinguishers, using hand-held computers and barcode scanners from the Norand corporation of Iowa. Eventually it was adapted to other uses. It was written in Turbo Pascal. All the libraries were my own, including one to do cooperative multi-tasking.
Our customers were in Northern Illinois, and I was the programmer/tech.
As me anything. ;-)
[Edit - Extended description of the stuff I wrote]
This is a rare (?) occasion where old dogs would likely adapt more quickly due to having done it before. Not only will their old muscle memory kick in, they will be more comfortable with the situation.
I've been remote for years and tend to live in rural areas with spotty connections. I also travel frequently. I can usually stack up a week or two's worth of offline work just in case connections are terrible. Some of it's documentation and writing. But a lot of it is technical stuff or mock ups. Maybe I can't take a task all the way to completion without ci/cd or additional documentation, but I can keep making progress at least.
* I download documentation sites for offline use with wget
* I set up virtual environments, containers, and dependencies prior to going offline.
* Abstract away any libraries that I might need to add or look up the semantics of. Handwaving over the details.
* If there's a dependency that I might have to patch, or upstream code I might have to read, I typically vendor things with submodules locally
* run local instances of infrastructure for testing integrations or tools that expect you to be online all the time such as; config management tools, helm charts, docker repos, secrets management.
* have testing plans that don't require online validation
* for code, unit tests
* for IaC stuff, templating it out and diffing or manually eye-balling
* keep the logic of ci/cd pipelines in code or scripts instead of platform specific configuration files (within reason)
It doesn't have to be a technical solution. Explicitly planning out your work days to the minutia and accounting for all the tools you'll need will get you pretty far.Now planning around times in-between access to power is an entirely different game.
edit: formatting
But weeks ago, I had to implement something in DQL, which I'd never used before, their documentation is terrible, and google didn't help that much either.
1. Programming without google
2. Programming (a web app) without webdev tools
When I first started learning development in the early 2000s, it was php, jquery, html, and css and very few search results when googling.
When Firebug came along for Firefox, my entire world changed and it was as if lights from the heavens had been turned on.
I find myself using the Google --> Stackoverflow work pattern less and less.
Also assuming you mean Google the search engine, not the company, because as an Android dev, it would be tough without any documentation.
Although I would like instant access to Stack Overflow for various snippets. Things like ‘How to sort an array of numbers’
2. Info manuals, info browser
3. Self-documenting programs & environments (e.g., emacs but also Python with docstrings etc)
4. Look at the source code on your machine
Get hold of the necessary books.