- 1. Using Github
- 1.1. Apprehend roughly follows understanding basic CRUD
- 1.1.1. Create: know how to install the technology so as to be able to use it
- 1.1.2. Read: understand what has been installed, what is available, what needs to be completed
- 1.1.3. Update: know how to tune whatever needs to be for efficacy and efficiency
- 1.1.4. Delete: save assets, uninstall, and clean
- 1.2. Learn:
- 1.3. Comprehend:
- 1.4. Maintain 5S
- 1.5. Have a local copy of GitHub repositories under the same directory:
- 1.6. Tools
- 1.1. Apprehend roughly follows understanding basic CRUD
- 2. Hardware
- 3. Systems
- 4. bash
- 5. python
- 6. javascript
- 7. Text editors
- 8. IDE, Integrated Development Environments
- 9. Text editing with a lightweight markup language
- 10. Major techs
- 11. Other techs
- 12. Testing techs
- 13. Interesting programmers
- 14. Interesting programs
This account is meant to keep technology assets, ultimately as project deliverables in their most accomplished form, and getting there as notes, install scripts, learning materials – tutorials, cheat sheets, archetypal situations and solutions – snippets, and pedagogical projects.
To master a technology is first to apprehend, then learn, and comprehend.
Learning a new technology is mainly achieved through tutorials and realizing pedagogical projects.
These could be based either on books, websites, or MOOCs. Experience shows that best assets worth keeping are in the form of Anki flashcards – those are on Anki site. Essential information worth keeping from tutorials, including cheat sheets, should be transcribed into Anki flashcards. All other tutorial scripts, videos, articles, and lecture notes are not worth storing. Some Anki flashcard have turned into complex procedures that show hard, and probably unnecessary to remember. These should be transferred as script in these repositories in a way that they could be readily accessible.
Acquiring these technology aims at gaining efficacy and efficiency. Which materialize into projects, projects assets being scripts, code, and deliverable.
But also into summaries and documentations of accomplishments, for reasons as follows:
Writing a summary will force to consolidate thoughts, gain clarity, and extract valuable insights from own experiences. This process promotes personal growth and self-awareness, crystallize learning from successes and failures.
Human memory is fallible, and over time, details of past endeavors may fade. Writing down accomplishments and lessons learned creates a record that helps remember important details and retain valuable knowledge. This written account can serve as a reference in the future when specific information or experiences need to be recalled.
Summarizing accomplishments and challenges faced helps to evaluate progress and performance. Leading to objectively assess strengths and weaknesses, identify areas for improvement, and set future goals. Allowing to refer back to past work and measure growth over time.
While it may appear that these writings go unnoticed, there may be instances where sharing these summaries becomes valuable. For example, when collaborating with others on similar projects, sharing insights and lessons learned can help them avoid similar pitfalls or build upon collective successes. Additionally, when one switch roles or organizations, having a written record of accomplishments and experiences can be useful in showcasing your skills and expertise.
In a professional setting, documenting accomplishments and lessons learned contributes to the broader knowledge base of functions, organizations, and territories. When others can access and learn from your experiences, it helps prevent reinventing the wheel and promotes continuous improvement within the organization. It also ensures that valuable knowledge is not lost if you leave the organization or change roles.
Sort (seiri 整理): check if posted info & content are useful, remove when it's not Set in order (seiton 整頓): arrange for easy readability & use Shine (seiso 清掃): review periodically for validity (with software updates, the possibility of using system & machine may vary) and to refresh in reader's memory Standardize (seiketsu 清潔): standardize look, nomenclature to be more intuitive Sustain/self-discipline (shitsuke しつけ): seek & maintain continuous improvement, delivery, deployment
In settings.json (ctrl+comma):
"git.defaultCloneDirectory": "~/Documents/GitHub/",
Github is the current repository for several machines:
-
A desktop running Linux Mint 20 Ulyuana / Cinnamon
-
A Microsoft Surface Book version 1 with double boot: Linux Mint / Cinnamon & Windows 10
-
2 64gb bootable disks, booting Linux Mint / Cinnamon and hopefully one day Windows 10 as well
A Windows 10 VMWare client in Linux Mints allows handling of a few situations that Linux does not, such as:
-
Downloading Huawei phone pics & vids
-
Connecting to icbc site in China, which can only be browsed with IE
-
Running Wenlin with sounds
-
Getting TV mp4 from captvty
But cannot - get the mike sound from RosettaStone, so would need a double boot just for this - Connect to bluetooth devices. Watching a movie from Shunlei (BaiduYun can be seen on Linux) with external speakers would require usb cable.
-
AMD series 5: good so far, no need for expensive series 7, 9
-
thin & flat: to work as a e-book
-
non-glossy screen: don’t see the point of glossy, just annoying
-
non HiDPI, don’t see the point, lot’s of apps can’t handle it either
-
no more MSF computers: on Windows, drivers were always being updated, as if they would never work
-
Lenovo Think pad or ThinkBook: probably the best deal in China
-
Acer, Asus,
-
Dell, HP
-
Linux Mint is most user friendly
-
Fedora, Centos: one day
-
gparted: has a superb selection of software, all running in RAM in a ZFS partition
-
rescuezilla: to make complete machine backups
-
Windows 10, windows 7: one day might be needed
Mainly to rapidly key-in notes that include text, pics, weblinks,
but also tables, cross-references (sharing the same xml:id attribute), footnotes, embedded videos
and also description lists, admonitions (note, tip, important, warning, caution) and table of contents.
A cool tip: Github render as html on account head page the https://github/account/account/README.md file. README.adoc will work as well.
AsciiDoc is presented as superior by many, in the context of this page mainly for its Table Of Contents, toc. It is also presented as simpler to grasp. Here is the rationale: https://asciidoctor.org/docs/user-manual/#graduating-to-asciidoc
Markdown & GFM, Github Flavored Markdown: the de facto reference, mainly for Github and Jupyter notebooks.
Rendering on linux Mint:
sudo apt install retext
retext --preview filename.md
HackMD, mainly for collaborative work on github. Can draw simple UML diagrams (workflows) and math formulas.
Newlines within a Normal paragraph are not displayed. Neither are spaces: there are 4 spaces between a and b.
📎
|
NOTE: An admonition paragraph draws the reader’s attention to auxiliary information. |
💡
|
TIP: $ sudo apt install fonts-font-awesome # to render icons |
|
WARNING: Watch out for… |
🔥
|
CAUTION: Ensure that… |
❗
|
IMPORTANT: Don’t forget… |
sudo apt install AsciiDoctor
AsciiDoctor filename.adoc
will create filename.html in the same directory
Simple: print filename.html to pdf. Resulting pdf will have no TOC.
Direct conversion: https://asciidoctor.org/docs/asciidoc-syntax-quick-reference/
Interesting, also because it unveils PDF’specificities: https://github.com/asciidoctor/asciidoctor-pdf/blob/master/docs/theming-guide.adoc
sudo update-alternatives --install /usr/bin/editor editor /usr/local/bin/vim 100
After install new kernel, check updates on linux-surface/linux-surface#96
-
videos: https://pixabay.com/
-
audio: https://freesound.org/
Settings Sync lets you share your Visual Studio Code configurations such as settings, keybindings, and installed extensions across your machines so you are always working with your favorite setup.
The Turn On Settings Sync entry is in the Manage gear menu at the bottom of the Activity Bar (vertical left bar). This will synchronize:
-
Settings
-
Keyboard shortcuts for each platform
-
User snippets
-
Extensions
-
UI state
smtp.263.net imap.263.net https://partner.outlook.cn/ https://portal.partner.microsoftonline.cn/ https://login.partner.microsoftonline.cn/ https://www.system-in-motion.com/ https://web.wechat.com/ https://www.wechat.com/ https://www.baidu.com/ https://company.zhaopin.com/ http://mirrors.cn99.com/ 59.111.0.251 http://mirrors.aliyun.com/ubuntu/ https://mirrors.bfsu.edu.cn/ 39.155.141.16 http://mirrors.ustc.edu.cn/ http://archive.canonical.com/ http://security.ubuntu.com/ https://dl.winehq.org/wine-builds/
Most active Github users: https://gist.github.com/paulmillr/2657075
Ciro S.: posix-ubuntu, python, bonne appréciation de l’environment du software (free-lance system engineers will find it difficult against big corps), de la Chine.
Russell Keith-Magee: for its views on open-source. https://realpython.com/podcasts/rpp/22/
Armin Ronacher: created Flask as an April’s fool joke. https://realpython.com/podcasts/rpp/18/
Brett Cannon: Python core developer https://pythonbytes.fm/episodes/show/191/live-from-the-manning-python-conference
William Stein: https://talkpython.fm/episodes/show/273/cocalc-a-fully-colloborative-notebook-development-environment
Ravin Kumar: https://talkpython.fm/episodes/show/270/python-in-supply-chains-oil-rigs-rockets-and-lettuce
Karan Ahmed: for his roadmaps (frontend, backend, devops)
https://github.com/kamranahmedse http://youtube.com/theroadmap Design Patterns: https://roadmap.sh/guides/design-patterns-for-humans Interesting suggestions: https://kamranahmed.info/ Monitoring git updates: https://github.com/kamranahmedse/git-standup
Andrei Cioara: for his suggestions on organizing GitHub, Gitlab, and BitBucket repos, https://github.com/aicioara
HFT Guy in London, on how to organize GitHub repos: https://thehftguy.com/2016/10/24/heres-how-to-make-a-good-github-project-for-your-resume/
Sindre Sorhus, for 1k+ repositories on Github: https://github.com/sindresorhus?tab=repositories