Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/zentala/awesome-development

Tips & tricks for developers and IT specialists.
https://github.com/zentala/awesome-development

List: awesome-development

Last synced: 16 days ago
JSON representation

Tips & tricks for developers and IT specialists.

Awesome Lists containing this project

README

        

# Awesome Development [![Awesome](https://awesome.re/badge.svg)](https://awesome.re)
A curated collection of tips and tricks for developers at all levels, from beginners to seasoned IT professionals.

* **Boost Your Efficiency**: Discover ways to work smarter, not harder. 💹
* **Impress Your Peers**: Stand out with innovative solutions and cutting-edge techniques. 🔥
* **Accelerate Prototyping**: Learn to build faster and more effectively. 🛠
* **Fast-Track Your Career**: Gain the skills and insights to advance swiftly in your field. 🚀

This repository is dedicated to sharing my journey of exploring various technologies and solutions, aiming to find the most effective ones.
Whether you're just starting out or looking to refine your skills, there's something here for everyone.

# How to Quickly Start with New Technology?
When learning a new technology (``, like `Kafka`, `RPA`, `ROS`, `C++`, etc.) involve a flexible, multi-angle approach for a holistic understanding. Here’s a brief method:

1. **` docs`**: Start with a quick scan of official docs to grasp key concepts.
2. **` quick start`**: Use 'Quick Start' guides to set up and run the technology.
3. **` crash course`**: Learn basics and core ideas through crash courses.
4. **` cheat sheet`**: Familiarize with essential commands and functions.
5. **` awesome` Repository**: Discover top resources in community-curated lists.
6. **` weekly` Newsletter**: Stay current with trends via weekly newsletters.

This approach builds a multidimensional understanding by exploring the topic from different angles, enhancing learning and information retention more than in-depth, one-time study.

# How to Get the Most from JavaScript

As someone who has invested time in learning JavaScript, I've realized its immense potential for rapid prototyping. JavaScript isn't just for creating web pages; its versatility extends much further. Here's what you can accomplish with JavaScript:

- **Website Front-End**: Develop interactive websites using frameworks like React, Vue, or Angular.
- **Web Games**: Create engaging games with WebGL.
- **Web Server**: Build backend services using Node.js.
- **Desktop Apps**: Develop cross-platform desktop applications with Electron.
- **Mobile Apps**: Create mobile applications with frameworks like React Native.
- **Browser Plugins**: Enhance browser functionality with plugins for Chrome, Edge, Firefox, Opera.
- **Userscripts**: Automate browser tasks using userscripts.
- **CLI Apps**: Build console applications with Node.js.
- **Portable Apps**: There are bundlers available for creating portable apps.

JavaScript's ability to operate across multiple platforms with a single technology stack is one of its greatest strengths, making JavaScript developers excellent candidates for innovation departments focused on rapid prototyping. Their familiarity with a multi-platform ecosystem enables them to work efficiently across different domains, reducing the need for managing multiple types of developers. This cross-platform compatibility also allows for sharing code between various applications. As a proponent of fast prototyping, I highly value and recommend JavaScript for its versatility in quickly developing multi-platform solutions.

This is the beauty of JavaScript - despite its flaws, it offers a unique blend of flexibility, speed, and reach across multiple domains, making it a valuable tool in any developer's arsenal.

# Good README

## Technical Introduction
For an in-depth technical guide on crafting a high-quality README, visit: [How to Write a Good README for Your GitHub Project](https://bulldogjob.com/news/449-how-to-write-a-good-readme-for-your-github-project).

## My Additional Advices
Make your README expressive and visually clear:
- Use **Icons** and **Badges** for quick visual cues.
- Include **Images** (like screenshots) to illustrate key points.
- Employ **Rich Markdown** formatting to organize and highlight information effectively.

# Shields / Badges
Enhance your READMEs and MD docs readability with visual badges.

## Shields.IO
Create custom badges, including optional icons, using [Shields.IO](https://shields.io/). Examples:

### Stability Badges
Declare project stability simply by choosing from one of the [Stability Badges](https://github.com/mkenney/software-guides/blob/master/STABILITY-BADGES.md):

[![stability-wip](https://img.shields.io/badge/stability-wip-lightgrey.svg)](https://github.com/mkenney/software-guides/blob/master/STABILITY-BADGES.md#work-in-progress)
[![stability-deprecated](https://img.shields.io/badge/stability-deprecated-922b21.svg)](https://github.com/mkenney/software-guides/blob/master/STABILITY-BADGES.md#deprecated)
[![stability-experimental](https://img.shields.io/badge/stability-experimental-orange.svg)](https://github.com/mkenney/software-guides/blob/master/STABILITY-BADGES.md#experimental)
[![stability-alpha](https://img.shields.io/badge/stability-alpha-f4d03f.svg)](https://github.com/mkenney/software-guides/blob/master/STABILITY-BADGES.md#alpha)
[![stability-beta](https://img.shields.io/badge/stability-beta-33bbff.svg)](https://github.com/mkenney/software-guides/blob/master/STABILITY-BADGES.md#beta)
[![stability-release-candidate](https://img.shields.io/badge/stability-pre--release-48c9b0.svg)](https://github.com/mkenney/software-guides/blob/master/STABILITY-BADGES.md#release-candidate)
[![stability-mature](https://img.shields.io/badge/stability-mature-008000.svg)](https://github.com/mkenney/software-guides/blob/master/STABILITY-BADGES.md#mature)
[![stability-frozen](https://img.shields.io/badge/stability-frozen-0000CD.svg)](https://github.com/mkenney/software-guides/blob/master/STABILITY-BADGES.md#frozen)
[![stability-locked](https://img.shields.io/badge/stability-locked-4b0088.svg)](https://github.com/mkenney/software-guides/blob/master/STABILITY-BADGES.md#locked)

### Technical Stack Overview
Present your project's tech stack in READMEs as a clear table.

| Category | Technology |
| :---------- | :---------- |
| Environment | ![GitHub](https://img.shields.io/badge/-GitHub-181717?logo=github&logoColor=white)   ![Dotenv](https://img.shields.io/badge/-Dotenv-ECD53F?logo=dotenv&logoColor=black)   ![Node.js](https://img.shields.io/badge/-Node.js-339933?logo=nodedotjs&logoColor=white)   ![npm](https://img.shields.io/badge/-npm-CB3837?logo=npm&logoColor=white) |
| Front-end | ![Gatsby](https://img.shields.io/badge/-Gatsby-663399?logo=gatsby&logoColor=white)   ![React](https://img.shields.io/badge/-React-61DAFB?logo=react&logoColor=black)   ![TypeScript](https://img.shields.io/badge/-TypeScript-3178C6?logo=typescript&logoColor=white) |
| Design | ![Ant Design](https://img.shields.io/badge/-AntDesign-0170FE?logo=antdesign&logoColor=white)   ![CSS3](https://img.shields.io/badge/-CSS3-1572B6?logo=css3&logoColor=white)   ![Sass](https://img.shields.io/badge/-Sass-CC6699?logo=sass&logoColor=white)   ![JSS](https://img.shields.io/badge/-JSS-F7DF1E?logo=jss&logoColor=black) |
| Content | ![Strapi](https://img.shields.io/badge/-Strapi-4945FF?logo=strapi&logoColor=white)   ![i18next](https://img.shields.io/badge/-i18next-26A69A?logo=i18next&logoColor=white)   ![Airtable](https://img.shields.io/badge/-Airtable-18BFFF?logo=airtable&logoColor=white)   ![GraphQL](https://img.shields.io/badge/-GraphQL-E10098?logo=graphql&logoColor=white) |
| Code Quality | ![ESLint](https://img.shields.io/badge/-ESLint-4B32C3?logo=eslint&logoColor=white)   ![Prettier](https://img.shields.io/badge/-Prettier-F7B93E?logo=prettier&logoColor=black) |
| DevOps | ![GitHub Pages](https://img.shields.io/badge/-GitHubPages-222222?logo=githubpages&logoColor=white)   ![GitHub Actions](https://img.shields.io/badge/-GitHubActions-2088FF?logo=githubactions&logoColor=white)   ![SonarCloud](https://img.shields.io/badge/-SonarCloud-F3702A?logo=sonarcloud&logoColor=white) |
| Marketing | ![Google Analytics](https://img.shields.io/badge/-GoogleAnalytics-E37400?logo=googleanalytics&logoColor=white) |
| IDE | ![Visual Studio Code](https://img.shields.io/badge/-VisualStudioCode-007ACC?logo=visualstudiocode&logoColor=white)   ![EditorConfig](https://img.shields.io/badge/-EditorConfig-FEFEFE?logo=editorconfig&logoColor=black)   ![gitignore.io](https://img.shields.io/badge/-gitignore.io-204ECF?logo=gitignoredotio&logoColor=white) |

## SonarCloud Quality Status
[SonarCloud](https://sonarcloud.io/) can be easily integrated with your GitHub repository using GitHub Apps, providing simple project analytics with the following badges:

[![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=zentala_zentala.agency&metric=vulnerabilities)](https://sonarcloud.io/summary/new_code?id=zentala_zentala.agency)
[![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=zentala_zentala.agency&metric=security_rating)](https://sonarcloud.io/summary/new_code?id=zentala_zentala.agency)
[![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=zentala_zentala.agency&metric=sqale_rating)](https://sonarcloud.io/summary/new_code?id=zentala_zentala.agency)
[![Code Smells](https://sonarcloud.io/api/project_badges/measure?project=zentala_zentala.agency&metric=code_smells)](https://sonarcloud.io/summary/new_code?id=zentala_zentala.agency) [![Bugs](https://sonarcloud.io/api/project_badges/measure?project=zentala_zentala.agency&metric=bugs)](https://sonarcloud.io/summary/new_code?id=zentala_zentala.agency)
[![Lines of Code](https://sonarcloud.io/api/project_badges/measure?project=zentala_zentala.agency&metric=ncloc)](https://sonarcloud.io/summary/new_code?id=zentala_zentala.agency)
[![Technical Debt](https://sonarcloud.io/api/project_badges/measure?project=zentala_zentala.agency&metric=sqale_index)](https://sonarcloud.io/summary/new_code?id=zentala_zentala.agency) [![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=zentala_zentala.agency&metric=reliability_rating)](https://sonarcloud.io/summary/new_code?id=zentala_zentala.agency) [![Duplicated Lines (%)](https://sonarcloud.io/api/project_badges/measure?project=zentala_zentala.agency&metric=duplicated_lines_density)](https://sonarcloud.io/summary/new_code?id=zentala_zentala.agency)

## Must to see - there is more!
Explore a vast collection of badge examples at [Badge Demo](https://github.com/wisehackermonkey/badge-demo).

# Icons
Enhance your projects and digital communication with a variety of icons and emojis.

## Unicode Emoji Icon Characters
Find a diverse range of emojis at [Unicode Emoji Table](https://unicode-table.com/en/emoji/), useful in:
* Console - for visual elements in scripts.
* LinkedIn - to make profiles and posts more engaging.
* READMEs - to visually improve GitHub documentation.
* Bots - to enliven messages and responses.
* Social Posts - to focus attention and emphasize the messages.

## Google's Icon Fonts
* [Noto Color Emoji](https://fonts.google.com/noto/specimen/Noto+Color+Emoji): A HQ UTF8 icon font by Google, great for web and print.
* [Google Material Icons](https://fonts.google.com/icons): Parametric icons for web design, suitable for professional layouts.

## GitHub Emoji for Markdown Files
Explore an extensive list of GitHub emojis for a creative touch in `.md` files:
[GitHub Emojis](https://gist.github.com/rxaviers/7360908)

# TeamViewer as a CLI
TeamViewer can be operated in a console-only mode, without the GUI. This can be particularly useful for easy access to remote servers located behind NAT.

``` console
$ cd ~/Downloads/
$ wget https://download.teamviewer.com/download/linux/teamviewer_i386.deb # for x86
$ sudo dpkg -i teamviewer_i386.deb
$ teamviewer help # lists commands, but not all, reason unknown
$ teamviewer info # check TV daemon status and get TV ID
$ sudo teamviewer passwd [new_password] # set a new password
```

To conserve disk space, consider installing TeamViewer Host, which is a lighter version optimized for continuous remote access to computers and servers, functioning without the traditional GUI of the standard TeamViewer application.

# Awesome Terminal

## Recomeded setup
The best and great looking stack that you can setup:
* ZSH shell with [oh-my-zsh](https://github.com/ohmyzsh/ohmyzsh)
* [powerlevel10k theme](https://github.com/romkatv/powerlevel10k) with Meslo font
* Terminal emulator:
* Linux: [Tilix](https://gnunn1.github.io/tilix-web/)
* MacOS: [iTerm2](https://iterm2.com/)
* Windows: [Windows Terminal](https://github.com/microsoft/terminal)

### Learn about possibilities of ZSH:
* [5 tips to improve productivity with zsh](https://opensource.com/article/18/9/tips-productivity-zsh)
* [10 Zsh Tips & Tricks: Configuration, Customization & Usage](https://www.sitepoint.com/zsh-tips-tricks/)

## WSL2 + Windows Terminal + VSCode Remote Explorer

This trio offers a seamless integration of Linux and Windows environments, supported natively by Microsoft. The combination of WSL2 (Windows Subsystem for Linux) and Windows Terminal provides a robust platform for running a real Linux environment on Windows, while maintaining the comfort and familiarity of the Windows OS.

### Key Integration Features:
- **WSL2 Integration**: WSL2 is deeply integrated with Windows, offering an authentic Linux experience. It's particularly useful for running Linux servers, testing cross-platform applications, and more.
- **Windows Terminal**: It supports various shells including PowerShell and the Linux shell through WSL. This versatility allows developers to easily switch between Windows and Linux environments.
- **VSCode Remote Explorer**: This feature in VSCode supports WSL targets, allowing you to develop in a Linux-based environment directly from VSCode on Windows.

This collaboration between VSCode Remote Explorer, Windows Terminal, and WSL2 represents a significant stride in cross-platform development. Developers can effortlessly manage and navigate both Windows and Linux environments, leveraging the strengths of each for a more efficient workflow. Regular updates and improvements to these tools continue to enhance their integration, making them a powerful combination for modern development needs.

# Jupyter Notebook
Discovering [Jupyter Notebooks](https://jupyter.org/) has been a game-changer in my work.

## Benefits

Jupyter Notebook is a versatile tool ideal for:
* Programming beginners,
* Data science enthusiasts,
* Scientific researchers.

### Why It's a Great Choice:

#### Easy to Start
- **User-Friendly Interface**: Jupyter's intuitive interface simplifies the coding process for beginners.
- **No Complex Setup**: It runs directly in your browser, eliminating complicated installations.

#### Interactive Learning
- **Live Code Execution**: Immediate feedback from code execution aids learning and debugging.
- **Experimentation-Friendly**: Modify and rerun code snippets to deepen your understanding of different components.

#### Integration of Code and Documentation
- **Markdown Support**: Add notes and documentation alongside code for a clearer thought process.
- **Rich Text Elements**: Enhance your notebooks with HTML, images, videos, and links.

#### Visualization Tools
- **Data Visualization**: Create charts and graphs directly within your notebooks.
- **Interactive Output**: Dynamic outputs make learning and exploration more engaging.

#### Wide Language Support
- **Versatile Language Compatibility**: Primarily supports Python, with options for R, Julia, and Node.js.

#### Community and Resources
- **Extensive Community**: Access a vast network of users, shared notebooks, and resources.
- **Growing Ecosystem**: Continually updated with new extensions and libraries.

Jupyter Notebook is an excellent platform for both novice and experienced developers, providing an interactive environment for learning, data analysis, algorithm development, and comprehensive technical documentation.

## Getting Started
Begin your Jupyter journey with ease:
* Create a `*.ipynb` file in your repository.
* Install the [Jupyter Extension for Visual Studio Code](https://github.com/microsoft/vscode-jupyter).
* Refer to the official [VS Code usage instructions](https://code.visualstudio.com/docs/datascience/jupyter-notebooks) for guidance.