a3n
Counter-suggestion:

Dive totally into the Windows world.

My background was star-nix, and when i found myself having to use Windows, I always did something like Cygwin, gvim, etc. Which worked fine.

But it necessarily limited my expertise in Windows. Being an expert in Windows, while working in a Windows environment, should make you a more valuable player.

When someone asks you how you do something, you don't want their eyes to glaze over when you say "First you have to install Cygwin." You make yourself a useless resource in their opinion.

Everything that can be done as a user in *nix can be done in Windows, in some Windows way. Be useful to yourself and your colleagues.

I think.

sandreas
I personally use the following:

- MSys2 - unix tools for windows

- wsl - Windows subsystem for linux

- Powershell + Powershell ISE - windows shell + dev tool

- starship - prompt config that also works on Powershell

- scoop - package manager (similar to apt and others) installs to your user directory

- The ultimate windows utility - debloat and installer https://christitus.com/windows-tool/

- my dotfiles

I still prefer POSIX stuff, but this way it is acceptable, especially scoop package manager is the most useful tool to save time installing software without admin permissions.

Leftium
I use Git bash for Windows. It brings a lot of the linux shell tools/scripting experience to Windows. There is a portable "thumbdrive edition."[1]

Look for the portable versions of other apps.

PowerShell[2] is the built-in scripting language for Windows (better than BATCH scripts).

I pop into gVim for quick text manipulation tasks.

https://sumatrapdfreader.org is the best PDF reader.

I recommend a launcher like https://keypirinha.com or even the MS PowerToys runner.

[1]: https://git-scm.com/download/win

[2]: https://www.wikiwand.com/en/PowerShell

wruza
Msys2 (mandatory), ahk, rapid environment editor, notepad2, winaero tweaker (bigger fonts, disabling nonsense).

Not sure about "install", but I think all of them can be just copied to your Documents/MyApps folder and run from there and/or associated in explorer.

I also write all my cli tools in typescript. It’s just a matter of copying a project from my template and running yarn link. Now it’s available in PATH as <toolname>, links directly to project folder (no need to “reinstall” on changes).

Learn how to add menu items in explorer https://stackoverflow.com/questions/20449316/how-add-context...

In msys usr/bin, copy at least the following: echo, find, grep, mkdir, sort, bash - into `x${name}`, so you can run xfind, xbash, etc to not clash with windows builtins. You’ll cp more tools later, but these are immediately necessary.

Use a cmd-prolog for bash scripts:

  script.cmd:

  :<<BATCH
      @xbash %~dpf0 %*
      @exit /b
  BATCH

  echo "bash here"
Powertoys FancyZones work better for me than any K/G/tiling wms.

For Excel, I used `npm i winax` (COM automation) at my last job. You may find it useful for advanced scripting.

Zambyte
Regarding admin requirements, are you sure your IT will say no if you asked for permission to install things? Most (all?) places have an approval / exception process.
xnorswap
Some recommendations:

Shell: Powershell. It takes some getting used to dealing with objects rather than the "everything is a file/string" world of unix/linux but once you adjust to that, it's wonderful.

Toy programming/scripting: Linqpad. Quickly script tools in C#/.Net.

p.s. On file installation, try winget, or possibly chocolatey. Install via command line, and many of the programs support being installed without admin privileges by installing to the user profile.

Also don't be scared to ask your boss / IT department to install things for you. It's their job to provide you the tools you need.

I'd warn against trying to "hold on" to linux by trying to run everything through emulators or WSL2, it'll just add friction when you want to collaborate with colleagues.

ratg13
For a rich text editor, go with Notepad++ or VSCode

Regarding the rest though, I would say forget windows and shell scripting, and focus instead on learning your tools.

You said Excel was a big part of your job .. I would start by improving skills here. There are a lot of good formulas and tools that it’s important to be aware of to make your job easier.

If you understand pivot tables and vlookup well enough, then I would suggest learning PowerBI

You can even use the excel sheets as your data sources.

Figure this out and you will blow their minds.

solardev
What exactly are you trying to script and manipulate on company computers? (i.e. are you just playing around or trying to write your own programs, or is there some business process you're trying to automate?)

Assuming you're just playing around and not trying to build something for business/professional use:

Can you access Powershell at all (the new-ish and improved Windows terminal)? You can write scripts in it.

If you prefer GNU/Linux apps, you can try a portable build of Cygwin (which lets you run Bash and some utils): https://github.com/MachinaCore/CygwinPortable (edit: or see Git Bash, as posted by Leftium: https://news.ycombinator.com/item?id=41052353)

Also check out Portable Apps: https://portableapps.com/apps

As a last resort, you might be able to put Linux on a USB drive (or disk drive, if it has one) and boot into that, if the BIOS lets you. Some of the Live CDs have a "diskless" mode that won't cause any permanent changes to the system.

There's probably also a lot of online tools that can do some of that inside a web browser (like word processors and PDF editors and text manipulation). You can also run code inside codesandbox/codepen/hosted code space of your choice. Or you can look for portable interpreters for Node (Javascript), maybe Python, Lua, etc.

For window management, Windows has some nice shortcuts built-in (like drag a window to a side to fill half the screen, windows+arrow keys to move things around, or Windows+tab or alt-tab to switch between apps, etc.

----------

On the other hand, if you're actually trying to write something for the company, you should probably talk to your IT department about it and collaborate on a solution. Don't write something bespoke that nobody else can maintain once you're gone (or just promoted). Especially if it's actually tied to some industrial processes!

navjack27
Just do what the job requires of you and in your off time explore and experiment. You're young and the job you currently have absolutely does not fit your interests and they won't magically have the same youthful exuberance that you do and they most likely won't be aligned with the kind of personal growth that you're looking for.

Doing what you love has the potential to completely kill what you love keep that in mind.

defrost
sysinternals suite

https://learn.microsoft.com/en-us/sysinternals/downloads/sys...

A collection of tools that started outside Microsoft and are now very much embraced. Process Monitor does just that, AutoStart shows all the cruft that attaches at startup, to menus, to browsers, etc. FileMonitor .. live and logged file activity, etc.

One for your windows machine at home: PortMaster - it's an "easy use" tiered (free -> paid VPN like additions) variation in the sysInternals TCPView family - monitoring all network connections, tying them back to a process and making accept|deny trivial.

PortMaster requires installion - sysInternals mostly don't, but do report better with admin privileges.

BulkRenameTool is crazy effective if ever you need to organise file names, in a directory, multiple directories, entire subtrees, with or without regular expressions, can add | remove patterns | timestamps, etc. https://www.bulkrenameutility.co.uk/

https://ss64.com/nt/ :: An A-Z Index of Windows CMD commands.

https://ss64.com/ps/ :: An A-Z Index of Windows PowerShell commands

ROBOCOPY:: https://ss64.com/nt/robocopy.html - Windows native Robust File and Folder Copy, in a windows production pipeline this is the tool that can be autostarted to monitor folders and move | copy | backup data | scripts .. useful to move staged data evolution from one machine|location to another.

not1ofU
https://ninite.com/

has a lot of decent tools in one place (select the ones you want, download one exe - run it, it grabs the latest version of everything you selected and installs it with sane options [no toolbars / good location] (I haven't used it in a long time so I am not sure if that's still the case, it gets mentioned here sometimes, so maybe search here about it, get a fresher perspective, i used to use it a lot though.))

https://nakka.com/soft/clcl/index_eng.html - its a clipboard manager you mentioned notepad++ already, it has some useful plugins too

nom
AltDrag - drag and resize windows via hotkey like it's common on Linux

WinCompose - compose key, if you need it. Behaves identically.

Everything - the only usable file search on windows

Process Hacker / Process Explorer - task managers that actually lets you do stuff

Check out the Sysinternals Tools, it brings lots of missing fundamental features to windows.

I heard that knowing Powershell can unlock some kind of superpower, might be worth a look too.

tobinfekkes
PowerToys.

I think there is a .MSI version laying around somewhere?

Maybe not anymore, I'm not finding it :(

hulitu
> What I wanted to ask you is tools for making my experience less terrible.

Notepad helps. Practicing a life of renunciation helps: everything is pain in Windows.

Avoid if at all possible.

thecrumb
Conemu is a good terminal. VSCode is editor of choice. Find and Run Robot for rofi/dmenu replacement. Too bad you can't install WSL...
ahazred8ta
Ask your IT about the Windows Subsystem for Linux (WSL), which gives you a familiar environment on a windows machine.
bravetraveler
WSL is the only way I can get by. Basically imitate my entire Linux configuration in there; dotfiles and all
gregjor
flame thrower or hydraulic press should make it tolerable.

maybe boot it from linux on a usb stick so you can continue to use that.

atmanactive
Make sure to go full portable on windows. Portable software on windows means software that doesn't need to be installed (or is installed only once and never again), software that doesn't depend on any other software in windows (except for runtime libraries), and finally, software that is capable of discovering it's own path at runtime and capable of storing its state data somewhere on that same path. This ensures that your portable software root folder can work on any windows straight away. This way you make sure windows will never loose stuff that's important to you. This way you can change computers at will, you can keep working at multiple computers at a time (just by plugging your USB drive or copying your folder). Simply put, by going all portable you make sure windows is just an easily replaceable underlying engine for your software stack. Given windows' and x86's commitment to supporting legacy software, I have my portable drive in use for about 20 years now, happily expanding my software library and surviving at least 10 generations of hardware and windows upgrades without a hitch.

Here is my recipe: Get yourself a fast SSD or USB drive dedicated to your own windows portable library. Format it as one partition. Make the partition occupy drive letter A:. Having a predetermined drive letter that doesn't change helps with software that's not 100% portable but still stores absolute paths instead of relative ones. Now create a single folder on that drive, like, for example "MyPC" or whatever. Inside that folder create 3 subfolders: Programs, Documents, Install. Always put all your portable programs in the "A:\MyPC\Programs\" folder. Always put all your documents in the "A:\MyPC\Documents\" folder. Put driver files and runtime libraries in the "A:\MyPC\Install\" folder. For all three, feel free to create subfolders as needed, either per topic, per group, or however your brain envisions data trees.

You can find plenty of portable windows software in the links provided below.

Few of my favorites for specific tasks:

- my personal auto-run and launch hooks: https://www.dcmembers.com/skwire/download/splat/

- my personal system tray app/doc shortcuts: http://jacquelin.potier.free.fr/QuickWayToFolders/

- my personal desktop icons: https://www.cylog.org/utilities/toolbox.jsp

- system monitoring utilities: https://learn.microsoft.com/en-us/sysinternals/downloads/pro...

https://github.com/LibreHardwareMonitor/LibreHardwareMonitor

- how to keep secret data on a portable drive: https://www.veracrypt.fr/en/Home.html

Find more portable apps in these libraries:

https://portapps.io/

https://portableapps.com/

https://www.portablefreeware.com/