Programming Resources | Python | Javascript | Artificial Intelligence Updates | Computer Science Courses | AI Books
54.3K subscribers
880 photos
1 video
4 files
334 links
Everything about programming for beginners
* Python programming
* Java programming
* App development
* Machine Learning
* Data Science

Managed by: @love_data
Download Telegram
Evolution of Programming Languages πŸ–₯️


πŸ”°Programming LanguagesπŸ”°

1. JAVA:
More than 85% android apps are created using JAVA. It is also used in big (big means big) websites. It is a portable programming language which makes it easy to use on multi platforms.

2. Java Script:
Its a browser/client side language. It makes the webpage more interactive. Like for example when you enter a comment on Facebook then the whole page doesn’t load., just that comment is added. This kind of functionalities are added into webpages with JavaScript. Javascript brought about a revolution in webapps.

3. Assembly Language:
The most low level programming language because its nothing more than machine code written in human readable form. Its hard to write and you need to have deep understanding of computers to use this because you are really talking with it. Its very fast in terms of execution.

4. C:
Its a low level language too that’s why its fast. It is used to program operating system, computer games and software which need to be fast. It is hard to write but gives you more control of your computer.

5. C++ :
Its C with more features and those features make it more complex.

6. Perl:
A language which was developed to create small scripts easily . Programming in Perl is easy and efficient but the programs are comparatively slower.

7. Python:
Perl was made better and named Python. Its easy, efficient and flexible. You can automate things with python in a go.

8. Ruby:
Its similar to Python but it became popular when they created a web application development framework named Rails which lets developers to write their web application conveniently.

9. HTML and CSS:
HTML and CSS are languages not programming languages because they are just used display things on a website. They do not do any actual processing. HTML is used to create the basic structure of the website and then CSS is used to make it look good.

10. PHP:
It is used to process things in a website. It is server-sided language as it doesn’t get executed in user browser, but on the server. It can be used to generate dynamic webpage content.

11. SQL:
This is not exactly a programming language. It is used to interact with databases.

➑️ This list could be long because there are too many programming language but I introduced you to the popular ones.

❓Which Language Should Be Your First Programming Language?

βœ… Suggestions..

1. Getting Started
Learn HTML & CSS. They are easy and will give you a basic idea of how programming works. You will be able to create your own webpages. After HTML you can go with PHP and SQL, so will have a good grasp over web designing and then you can go with python, C or Java. I assure you that PHP, HTML and SQL will be definitely useful in your hacking journey.

2. Understanding Computer And Programming Better
C..The classic C! C is one of the most foundational languages. If you learn C, you will have a deep knowledge of Computers and you will have a greater understanding of programming too, that will make you a better programmer. You will spend most of your time compiling though (just trying to crack a joke).

3. Too Eager To Create Programs?
Python! Python is very easy to learn and you can create a program which does something instead of programming calculators. Well Python doesn’t start you from the basics but with if you know python, you will be able to understand other languages better. One benefit of python is that you don’t need to compile the script to run it, just write one and run it.

React ❀️ for more
❀7πŸ‘2
Roadmap to become a Programmer:

πŸ“‚ Learn Programming Fundamentals (Logic, Syntax, Flow)
βˆŸπŸ“‚ Choose a Language (Python / Java / C++)
βˆŸπŸ“‚ Learn Data Structures & Algorithms
βˆŸπŸ“‚ Learn Problem Solving (LeetCode / HackerRank)
βˆŸπŸ“‚ Learn OOPs & Design Patterns
βˆŸπŸ“‚ Learn Version Control (Git & GitHub)
βˆŸπŸ“‚ Learn Debugging & Testing
βˆŸπŸ“‚ Work on Real-World Projects
βˆŸπŸ“‚ Contribute to Open Source
βˆŸβœ… Apply for Job / Internship

React ❀️ for More πŸ’‘
πŸ‘6❀4
--- Git Commands ---

πŸ—οΈ git init | Initialize a new Git repository
πŸ”„ git clone <repo> | Clone a repository
πŸ“Š git status | Check the status of your repository
βž• git add <file> | Add a file to the staging area
πŸ“ git commit -m "message" | Commit changes with a message
πŸš€ git push | Push changes to a remote repository
⬇️ git pull | Fetch and merge changes from a remote repository

--- Branching ---

🌿 git branch | List branches
🌱 git branch <name> | Create a new branch
πŸ”€ git checkout <branch> | Switch to a branch
πŸ”§ git merge <branch> | Merge a branch into the current branch
πŸ”„ git rebase <branch> | Reapply commits on top of another base branch

--- Undo & Fix Mistakes ---

πŸ”™ git reset --soft HEAD~1 | Undo last commit but keep changes
🚫 git reset --hard HEAD-1 | Undo last commit and discard changes
βͺ git revert <commit> | Create a new commit that undoes changes from a specific commit

--- Logs & History ---

πŸ“œ git log | Show commit history
🌐 git log --oneline --graph --all | Pretty graph of commit history

--- Stashing ---

πŸŽ’ git stash | Save changes without committing
🎭 git stash pop | Apply stashed changes and remove them from stash

--- Remote & Collaboration ---

🌍 git remote -v | View remote repositories
πŸ“‘ git fetch | Fetch changes without merging
πŸ•΅οΈ git diff | Compare changes
❀2πŸ‘2
Don't overwhelm to learn JavaScript, JavaScript is only this much

1.Variables
β€’ var
β€’ let
β€’ const

2. Data Types
β€’ number
β€’ string
β€’ boolean
β€’ null
β€’ undefined
β€’ symbol

3.Declaring variables
β€’ var
β€’ let
β€’ const

4.Expressions
Primary expressions
β€’ this
β€’ Literals
β€’ []
β€’ {}
β€’ function
β€’ class
β€’ function*
β€’ async function
β€’ async function*
β€’ /ab+c/i
β€’ string
β€’ ( )

Left-hand-side expressions
β€’ Property accessors
β€’ ?.
β€’ new
β€’ new .target
β€’ import.iss.oneta
β€’ super
β€’ import()

5.operators
β€’ Arithmetic Operators: +, -, *, /, %
β€’ Comparison Operators: ==, ===, !=, !==, <, >, <=, >=
β€’ Logical Operators: &&, ||, !

6.Control Structures
β€’ if
β€’ else if
β€’ else
β€’ switch
β€’ case
β€’ default

7.Iterations/Loop
β€’ do...while
β€’ for
β€’ for...in
β€’ for...of
β€’ for await...of
β€’ while

8.Functions
β€’ Arrow Functions
β€’ Default parameters
β€’ Rest parameters
β€’ arguments
β€’ Method definitions
β€’ getter
β€’ setter

9.Objects and Arrays
β€’ Object Literal: { key: value }
β€’ Array Literal: [element1, element2, ...]
β€’ Object Methods and Properties
β€’ Array Methods: push(), pop(), shift(), unshift(),
splice(), slice(), forEach(), map(), filter()

10.Classes and Prototypes
β€’ Class Declaration
β€’ Constructor Functions
β€’ Prototypal Inheritance
β€’ extends keyword
β€’ super keyword
β€’ Private class features
β€’ Public class fields
β€’ static
β€’ Static initialization blocks

11.Error Handling
β€’ try,
β€’ catch,
β€’ finally (exception handling)

ADVANCED CONCEPTS

12.Closures
β€’ Lexical Scope
β€’ Function Scope
β€’ Closure Use Cases

13.Asynchronous JavaScript
β€’ Callback Functions
β€’ Promises
β€’ async/await Syntax
β€’ Fetch API
β€’ XMLHttpRequest

14.Modules
β€’ import and export Statements (ES6 Modules)
β€’ CommonJS Modules (require, module.exports)

15.Event Handling
β€’ Event Listeners
β€’ Event Object
β€’ Bubbling and Capturing

16.DOM Manipulation
β€’ Selecting DOM Elements
β€’ Modifying Element Properties
β€’ Creating and Appending Elements

17.Regular Expressions
β€’ Pattern Matching
β€’ RegExp Methods: test(), exec(), match(), replace()

18.Browser APIs
β€’ localStorage and sessionStorage
β€’ navigator Object
β€’ Geolocation API
β€’ Canvas API

19.Web APIs
β€’ setTimeout(), setInterval()
β€’ XMLHttpRequest
β€’ Fetch API
β€’ WebSockets

20.Functional Programming
β€’ Higher-Order Functions
β€’ map(), reduce(), filter()
β€’ Pure Functions and Immutability

21.Promises and Asynchronous Patterns
β€’ Promise Chaining
β€’ Error Handling with Promises
β€’ Async/Await

22.ES6+ Features
β€’ Template Literals
β€’ Destructuring Assignment
β€’ Rest and Spread Operators
β€’ Arrow Functions
β€’ Classes and Inheritance
β€’ Default Parameters
β€’ let, const Block Scoping

23.Browser Object Model (BOM)
β€’ window Object
β€’ history Object
β€’ location Object
β€’ navigator Object

24.Node.js Specific Concepts
β€’ require()
β€’ Node.js Modules (module.exports)
β€’ File System Module (fs)
β€’ npm (Node Package Manager)

25.Testing Frameworks
β€’ Jasmine
β€’ Mocha
β€’ Jest
πŸ‘8❀2πŸ‘Œ2
List of topics you need to cover if you're preparing for Java Interviews based on current Job market:

1. Core Java Fundamentals (Refer to already posted topics)
2. Advanced Java
- Design Patterns
- Multithreading
- Java Memory Model
- Performance Optimization
- Reflection & Dynamic Proxies
3. Spring Framework
- Spring core concepts
- Spring boot
- Spring Data JPA
- Spring Security
- Spring cloud
- Spring webflux
4. Hibernate
5. Testing (JUnit, Mockito, Integration, Functional, Performance Testing)
6. Build Tools (Maven / Gradle)
7. Logging
8. RDBMS, NoSQL DBs
9. WebSecurity Concepts
10. REST API concepts
11. CI/CD (Jenkins, GitHub Actions)
12. Containerization (Docker, Kubernetes)
13. Version Control (GitHub)
14. Monitoring (Grafana, ELK Stack etc)
15. Cloud (AWS, Azure, GCP (Very rare) )
16. Spring boot microservices
16. Messaging systems
17. Caching Strategies
18. System Design
19. Data Structures
20. Algorithms
21. Agile Methodologies
22. Behavioral questions
πŸ‘5❀2