-
Notifications
You must be signed in to change notification settings - Fork 5
Tools
Costin Grigore edited this page Mar 11, 2025
·
119 revisions
- keyboard
- mouse
- dual monitor
- chair - https://lifehacker.com/5941523/five-best-office-chairs
- IKEA Markus
- Henry Miller
- fast computer
- memory: 24G
- SSD
- procesor: i7 (not i3 or i5 - they lack proper virtualization)
- typing vs clicking
- The Productive Programmer
- Command Palette - The command palette is an interactive list whose purpose is to execute commands. The command palette is fed entries by means of .sublime-commands files.
- windows
- linux
- ubuntu - usable (unity GUI)
- mint (ubuntu) - usable (simple wiundows like GUI) + commercial apps
- debian - stability
- fedora - cutting edge
- arch - from scratch
- resources
- osx
Various/toolsets
Performance Debug
- shellexview - disable/enable contextual menu items
Cleanup
- CCLeaner
- patchcleaner (
scoop install patchcleaner) - DiskCleanup
- space cleanup - These basically will clean your windows installation by removing service pack uninstallers and other updates that have been superseded.
dism /online /Cleanup-Image /StartComponentCleanup dism /online /Cleanup-Image /StartComponentCleanup /ResetBase dism /online /Cleanup-Image /SPSuperseded
Analyze Space
- Wiztree (
scoop install Wiztree) - doesn't work on windows mapped drives, but is faster than WinDirStat - WinDirStat (works also on windows mapped drives)
PUP - Potentially Unwanted Program (AntiMalware, anti bloatware)
- Windows XP, 7, Vista, 8
- Windows 10
- windows
- cmder - http://cmder.net/
- gow & busybox & cygwin &
- https://github.com/bmatzelle/gow - Gow (Gnu On Windows) is the lightweight alternative to Cygwin. It uses a convenient Windows installer that installs about 130 extremely useful open source UNIX applications compiled as native win32 binaries. It is designed to be as small as possible, about 10 MB, as opposed to Cygwin which can run well over 100 MB depending upon options.
- (https://news.ycombinator.com/item?id=10026476) Between MSYS, MINGW, Cygwin, Cmder, Clink, Babun, etc. I am just wildly confused in general. I've used linux, I've used windows. Admittedly I am blessed enough to stick with Python but I know that even Anaconda does some msys magic behind the scenes on windows as well.
- MinGW is a compatibility library for compiling Unix programs to Windows. MSYS is a collection of tools on top of MinGW. Cygwin as a whole is comparable to MSYS. Has its own compatibility library, a broader collection of ported programs, and a way to choose which programs are installed. Babun is an extension of Cygwin.
- The use case for them is "I want a Windows shell that works exactly like Unix" or "I want to port a Unix program to Windows with minimal effort."
- Cmder and ConEmu address a bunch of deficiencies in the Windows Console Host (conhost.exe) that provides the UI for all console programs on Windows. They add features like resizable and tabbed windows but behind the scenes they're running conhost in a hidden window and redirecting i/o.
- The primary use case for Cmder and ConEmu is "I think the Windows Console Host sucks and want something better."
- GoW is a collection of GNU programs compiled for Windows with no dependencies on Cygwin or MinGW.
- The use case is "I want a Windows port of some common Unix command-line programs without any extra baggage."
- MinGW is a compatibility library for compiling Unix programs to Windows. MSYS is a collection of tools on top of MinGW. Cygwin as a whole is comparable to MSYS. Has its own compatibility library, a broader collection of ported programs, and a way to choose which programs are installed. Babun is an extension of Cygwin.
- linux
- bash
- osx
- bash
- tmux - start persistent shell sessions. you can reconnect to them tmux (https://gist.github.com/MohamedAlaa/2961058)
- screen - the old alternative
- htop - monitor processors - http://hisham.hm/htop/
- glances - https://nicolargo.github.io/glances/
- bmon - monitor network
- sensors
- windows
- wox - http://getwox.com
- deprecated: launchy
- osx
- built in
- important notions
- Command Palette
- eclipse jee neon 4.6
- plugins
- MouseFeed - (keypromoter for eclipse) - suggest keys to learn for mouse actions
- csveditor - https://raw.githubusercontent.com/SegFaultError/CsvEdit/master/csvedit.update/
- UML diagrams (class, sequence) - http://www.objectaid.com/
- Enhanced Class Decompiler (can use: JD, Jad, FernFlower, CFR, Procyon)
- https://marketplace.eclipse.org/content/enhanced-class-decompiler
- https://ecd-plugin.github.io/ecd/
- old: https://www.eclipse.org/community/eclipse_newsletter/2017/february/article8.php
- why was removed (contained a backdoor): https://0x10f8.wordpress.com/2017/08/07/reverse-engineering-an-eclipse-plugin
- https://github.com/dakaraphi/eclipse-plugin-commander
- quality
- spotbugs - https://spotbugs.github.io/
- deprecates
- pmd - https://pmd.github.io/
- checkstyle - http://eclipse-cs.sourceforge.net/#!/custom-config
- jdeodorant
- others
- deprecated but good and impossible to find
- CodePro Analytix - https://code.google.com/javadevtools/codepro/doc/index.html
- spotbugs - https://spotbugs.github.io/
- docs
- https://www.eclipse.org/eclipse/news/4.6/
- Tips And Tricks
- Command Palette - (after install eclipse-plugin-commander and configure recommended as
Shift+Enter)
- plugins
- intellij
- Command Palette -
Ctrl+Shift+Aor2 x Shift - plugins
- KeyPromoterX - (MouseFeed for intelij) - suggest keys to learn for mouse actions (helps becoming productive by using only keyboard) - https://github.com/halirutan/IntelliJ-Key-Promoter-X
- Command Palette -
- vscode
- KeyPromoter equivalent - not yet - https://github.com/Microsoft/vscode/issues/26729
- Command Palette -
Ctrl+Shift+P - basics - https://code.visualstudio.com/docs/getstarted/userinterface
- atom.io
- Command Palette -
Ctrl+Shift+P
- Command Palette -
- Intro to Maven - maven-3.5.0
- plugins
- google style configs
- checkstyle
- http://checkstyle.sourceforge.net/
- google checkstyle config - https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml
- maven checkstyle
- linux
- sudo apt-get install git
- windows
- git-2.13.0 - https://github.com/git-for-windows/git/releases/download/v2.13.0.windows.1/Git-2.13.0-64-bit.exe
- tortoisegit-2.4.0.2 - https://download.tortoisegit.org/tgit/2.4.0.0/TortoiseGit-2.4.0.2-64bit.msi
- sudo - https://helpdeskgeek.com/free-tools-review/5-windows-alternatives-linux-sudo-command/
- osx
- SourceTree - GUI for git, for windows too - https://www.sourcetreeapp.com/
- GitKraken - GUI for git, for Windows and Linux too - https://www.gitkraken.com/
- atom - https://atom.io/
- open source, cross-platform, hackable, Ctrl+Shift+P - Command Palette
- https://flight-manual.atom.io/getting-started/sections/atom-basics/
- deprecated
- sublime text - https://www.sublimetext.com/ , closed source, paid
- windows
- notepad++ https://notepad-plus-plus.org/download/
- linux
- micro
- install with
snap install micro --classic #sudo update-alternatives --install /usr/bin/editor editor /usr/bin/micro 10 #sudo update-alternatives --config editor - https://github.com/zyedidia/micro (sources project)
- deprecated alternatives
- vi - to exit press
ESCthen:q!thenEnter - emacs, mcedit, nano, pico, joe
- vi - to exit press
- install with
- micro
- https://www.yworks.com/products/yed - yEd is a powerful desktop application that can be used to quickly and effectively generate high-quality diagrams. yEd is freely available and runs on all major platforms: Windows, Unix/Linux, Mac OS X and online.
- windows
- mobaxterm - http://mobaxterm.mobatek.net/
- ssh
- kitty - A fork of putty with session saved in files - http://www.9bis.net/kitty/
- puttytray - https://puttytray.goeswhere.com/
- winscp
- file transfer (covered by Total Commander as well)
- putty - ssh from windows
- drawback: saves sessions to registry
- mobaxterm - http://mobaxterm.mobatek.net/
- linux
- ssh
- mc tutorial - https://www.youtube.com/watch?v=fJOkuaihAek
- windows
- totalcmd - https://www.ghisler.com/download.htm:
scoop install totalcmder- minimal config
- Display
- show hidden files
- Operation
- Left mouse button (Windows standard)
- Edit/View
- Editor
- using notepad++ (
scoop install notepadplusplus) -D:\home\raiser-apps\apps\notepadplusplus\current\notepad++.exe "%1"
- using notepad++ (
- Internal viewer
- use irfanview (
scoop install irfanview):D:\home\raiser-apps\apps\irfanview\current\i_view64.exe "%1"
- use irfanview (
- Editor
- Display
- minimal config
- FAR - http://farmanager.com/download.php?l=en
- mc (Midnight Commander port for windows) - https://sourceforge.net/projects/mcwin32/
- totalcmd - https://www.ghisler.com/download.htm:
- linux
- mc (Midnight Commander)
- java
- trolcommander
- osx
- Commander One
- mc (Midnight Commander port for osx) - http://louise.hu/poet/tag/mc/
- windows
- scoop
- https://scoop.sh/
- https://github.com/lukesampson/scoop/wiki
- buckets
- https://spin.atomicobject.com/2017/12/20/windows-command-line-installer/
- install
- windows 7
- prereq
- Windows Management Framework 5.1 - https://www.microsoft.com/en-us/download/details.aspx?id=54616
- prereq
- windows 7
- install using powershell:
Set-ExecutionPolicy RemoteSigned -scope CurrentUser [environment]::setEnvironmentVariable('SCOOP','d:\home\raiser-apps','User') iex (new-object net.webclient).downloadstring('https://get.scoop.sh') - install cmder-full
scoop install cmder-full - install useful stuff in cmder
cmder /register scoop bucket add extras scoop bucket add java scoop bucket add ... scoop install notepadplusplus scoop install adopt8-hotspot scoop install maven scoop install totalcommander scoop install irfanview scoop install keepass scoop install greenshot scoop install wox scoop install patchcleaner scoop install wiztree scoop install sysinternals
- deprecated
- chocolatey - paying for custom install folder and still using installers quircks
- scoop
- osx
- brew+cask
- ubuntu
- snap
- best, new, distro independent
- https://askubuntu.com/questions/618471/why-is-ubuntu-moving-to-snappy-packages
- apt
- deprecated
- rpm
- snap
- centos, redhat, oracle
- yum
- docker
- containers
- on windows is running in a VM and depends on Hyper-V (sort of light virtual environment)
- containers
- kubernetes
- container cluster manager
- vagrant
- vm manager and provisioning
- virtualbox
- free virtual machine (not compatible with Hyper-V on Windows)
- Microsoft Hyper-V (Windows 8/10 Pro only)
- java
- jdk8u131 - Java SE Development Kit
- decompilers (JD, Jad, FernFlower, CFR, Procyon)
- profilers
- jprofile - preffered for hot spots detection
- yourkit
- curl
- linux:
apt install curl(ubuntu),yum install curl(Redhat, Oracle, Centos) - windows: installed with cmder
- linux:
- postman - chrome addon
- SoapUI - https://www.soapui.org/downloads/soapui.html
- keystore explorer, truststore, keystore, certificates, pki, sign, cacerts - http://keystore-explorer.org/
- openssl
- network
- servers
- build
- github tools- https://github.com/marketplace/
- travis
- jenkins
- code quality
- codacy
- codecov
- build
- github's wiki
- slack
- google drive
- scm (git)
- public
- private
- others
- doodle.com - collaborative scheduling
- roweb static pages
- wiki
- google: docs, sheets, slides
- markdown editors
- https://stackedit.io (also integrates with google drive)
- https://app.classeur.io
- mindmapping
- offline
- Freemind
- online
- free
- http://minditxyz.herokuapp.com
- https://mind42.com
- https://irisdesk.io (collaborative, beta, buggy)
- free, open source
- https://app.wisemapping.com/c/maps/3/try (can be installed on premise)
- http://app.mindmapmaker.org
- free
- offline
- diagrams, flowcharts
- recording screen
- create logos/business cards (export vectorial image to eps)
- adobe illustrator (native .ai file)
- adobe photoshop (native .psd file)
- JSON viewer - http://jsonviewer.stack.hu/
- JSON cheatsheet - https://www.cheatography.com/mackan90096/cheat-sheets/json/
-
https://it.toolbox.com/blogs/lewiscunningham/generate-xml-schemas-for-your-data-061306
-
select DBMS_XMLSCHEMA.GENERATESCHEMA( 'HR', 'EMP_DATA' ) from dual- (!) schema and object are case sensitive
-
- Home
- Advices
- Development Algorithm
- Who's who
- Software Books
- Career, salary, salariu, brut, net, Levels
-
Tools
- Health
- Physical Tools
- Environment Tools
- File Tools
- Source Tools
- Information Tools
- Collaboration Tools
- Infrastructure Tools
- Language Tools
-
Concepts as Tools spec maturity
- Classes of Objects, Development Algorithm/mantra/practices
- Streaming Tools
- Process Tools psychology, analytical paralysis
- Special
- fiddler kotlin,javascript,scala
- translator scala->kotlin, java->kotlin
- Guides
- Asking for Help
- Aspects
- Security
- Server & Networking load balancing,
-
Principles & Guidelines
- PLS - Principle of Least Surprise (aka no puzzlers)
- SRP - Single Responsibility Principle
- KISS - Keep It Simple
- YAGNI - You aint gona need it
- DRY - Dont Repeat Yourself
- Fail Fast
- OCP - Open Closed
- POE - Premature Optimization is Evil
- LSP - Liskov Substitution Principle
- DIP - Dependency Inversion Principle / Inversion of Control
- Hollywood Principle - Don't call us We call you
- Tell Don't Ask
- Event sourcing
- NIHS - Not invented here syndrome
- Patterns - idioms, best practices, code smells
-
Intro to Problems - common problems: cache, logging, config, representing date, time, money
- Intro to Libraries - reactive, reactor, commons, collections, apache, guava, logging, config, time, test, junit, vavr, immutable, lombok, mapping, mapstruct, time, joda, cache, Guava, Caffeine, and cache2k
- Intro to DateTime
- Intro to Logging
- Intro to Concurrency - thread, parallelism
- Intro to I18N - internationalization, encoding, unicode, big indian, little indian, ascii, utf, utf8, utf16, formatting, parsing, transliteration, charset, localization, time, timezone, zone id, zone offset, GMT
- Intro to Numbers - rounding, ceil, floor, base, integer, decimal, precision, mantis, exponent, significant, statistics
- Java Idioms
- Concepts
- Code Changes refactor, format, eol, bugfix, newfeature
- Convention Over Configuration
- Continuous Integration
- Continuous Delivery
- Code License
- Fluent Interface
- Semantic Versioning
- Take It Offline
- Flow
- Languages
- Hardening
- Smells
-
Intros
- Intro to Paradigms Object Oriented, Functional, Procedural, Asynchronous
- Intro to Logic
- Intro to Product UX, UI, business, technical, backend, frontend
- Intro to Roles
- Intro to Decision Levels : business, financials, domain, product, architecture, high level design, low level design, coding, debugging, quality, roles, stakeholders
- Intro to Steps
- Intro to Software Architecture
- Intro to Software Design
- Intro to UML state machine diagram, class diagram, sequence diagram
- Intro to Graphical Design
- Intro to Performance bigO, algorithm complexity
- Intro to Agile
- Intro to Scripting
- Intro to Shell execution, environment, registry, powershell, cmd, cmder, linux, bash, ash, csh, zsh, ksh
- Intro to Wiki
-
Intro to Building
- Intro to DevMachine
- Intro to Git
- Intro to Maven
- Intro to Docker
- Intro to Hosting Deploy, nameserver, hostname, registrar, ssl, ddns, dns, naked domain, wildcard domain, email, smtp, pop3, imap, DKIM, SPF, spam
-
Intro to Landscapes Language Environments, Web Landscape
- Intro to JVM Landscape
-
Intro to Javascript Landscape
- Intro to Javascript
- Intro to Typescript binding, implicit, explicit, default (global), callsite, lambda, callback, function, promise, async await
- Intro to Node javascript, npm, yarn
- Intro to DotNet Landscape C# csharp
- Intro to Golang
- Intro to Ruby
- Intro to Python
- Coding Style
- Phases
-
Intro to Quality - QA, Quality Assurance, code quality, bugs, bug levels, metabugs
- Intro to Tests
-
Test Driven Development TDD, mantra
- Domain-and-Test-Driven-Design Advanced topics
- Intro to Coding defensive, offensive, preconditions, postconditions
- Intro to Debugging
- Intro to Profiling, Intro to Performance
- Intro to Code Review
-
Intro to Quality - QA, Quality Assurance, code quality, bugs, bug levels, metabugs
- Intro to Functional
- Intro to Computers memory, cpu, hardware, neuman, computer science, devices
- Intro to OFM
- Intro to Databases Intro to Database Migration ORM, ObjectRelationalMapping, Hibernate, JPA, ebeanorm
- Advanced in Databases - optimistic lock, pessimistic lock
- Intro to WebDevelopment - tcp, http
- Data Structures & money
- Intro to Virtualization
- Admin section
- Intro to Types value, record, case class, alias
- Intro to Layers - frontend,ui,ux
- Intro to Culture - teams, psychology, principles, behaviour
- Intro to 41 - aboriginal linux, google whitepapers
- Intro to Security - ssl, handshake, tsl, https, basic auth, tokens, refresh, jwt tokens, access, refresh
- Intro to Crypto
- Advanced
- Advanced Java
- Circuit Breaker, retry, bulkhead, RateLimit, resilience
- Immutable, purity, pure functions, functional style
- Identification Surrogate vs Natural Keys, database, rest, microservice
- Infrastructure devops, docker, containers, kubernetes, k8s, private cloud, continous deployment
- Resources
- Project Templates
- Ships
- Ship10 - 2021-Aug
- Ship 1 - 2017-May
- Ship 2 - 2017-June
- Ship 3 - 2017-July
-
Ship 4 - 2017-September
- Team 4
- Team 4 Reloaded
- Backlog 4
- Sprint 4.1 old
- Sprint 4.1 Home old
- Sprint 4.2 old
- Sprint 4.2 Home old
- Sprint 4.3 old
- Sprint 4.3 Home old
- Sprint 4.4 old
- Sprint 4.4 Home old
- Sprint 4.5 old
- Sprint 4.5 Home old
- Sprint 4.6 old
- Sprint 4.6 Home old
- Sprint 4.7 old
- Sprint 4.7 Home old
- Sprint 4.8 old
- Sprint 4.8 Home old
-
Non software
- Physical Tools - home tooling