Programming Tips πŸ’‘
51.6K subscribers
67 photos
10 videos
30 files
354 links
Programming & AI:
Tips πŸ’‘
Articles πŸ“•
Resources πŸ‘Ύ
Design Patterns πŸ’Ž
Software Principles βœ…

πŸ‡³πŸ‡± Contact: @MoienTajik

🎯 Buy ads: https://telega.io/c/ProgrammingTip
Download Telegram
Difference between \n and \r πŸ‘€

In Unix and all Unix-like systems, \n is the code for end-of-line, \r means nothing special. πŸ€·πŸ»β€β™‚οΈ

As a consequence, in C and most languages that somehow copy it (even remotely), \n is the standard escape sequence for end of line (translated to/from OS-specific sequences as needed)

in old Mac systems (pre-OS X), \r was the code for end-of-line instead. πŸ–₯

As a (surprising) consequence (harking back to OSs much older than Windows), \r\n is the standard line-termination for text formats on the Internet. 🌏

For electromechanical teletype-like "terminals", \r commands the carriage to go back leftwards until it hits the leftmost stop (a slow operation), \n commands the roller to roll up one line (a much faster operation) β€” that's the reason you always have \r before \n, so that the roller can move while the carriage is still going leftwards!.

For character-mode terminals (typically emulating even-older printing ones as above), in raw mode, \r and \n act similarly (except both in terms of the cursor, as there is no carriage or roller) πŸ˜‰

γ€°γ€°γ€°γ€°γ€°γ€°
#scape_secuence
@ProgrammingTip
14 Hot Chrome Extensions for Geeks πŸ”₯

β€’ Similar Web
β€’ Vimium
β€’ Grammarly
β€’ Image Size Info
β€’ Google Analytics Debugger
β€’ Tabstop
β€’ Session Buddy
β€’ Octotree
β€’ Ratings Preview for YouTubeβ„’
β€’ The Greate Suspender
β€’ Papier
β€’ Fontface Ninja
β€’ Marmoset
β€’ Lighthouse

https://t.me/pgimg/16

[ Website ] : http://bit.do/cext
γ€°γ€°γ€°γ€°γ€°γ€°
#Chrome #Extension
@ProgrammingTip
C# 7.1 - Everything You Need To Know ✨

Visual Studio 2017.3 brought with it the first minor update to the C# language, C# 7.1 πŸ’Ž

This update adds 4 new features to C# :
1️⃣ Async Main Method
2️⃣ Default Literal Expressions
3️⃣ Inferred Tuple Element Names
4️⃣ Generic Support For Pattern-Matching

πŸ”ΈπŸ”ΉπŸ”ΈπŸ”Ή

In this post, you'll learn :

β€’ How to enable the new C# 7.1 language features in your projects

β€’ Everything you need to know to start using all four of the new features

β€’ Some gotchas with using C# 7.1 in razor views.

https://t.me/pgimg/17

[ Website ] : http://bit.do/csnfe
γ€°γ€°γ€°γ€°γ€°γ€°
#CSharp
@ProgrammingTip
C# 7.1 - What's New Quick Start eBook.pdf
544.7 KB
C# 7.1 - What's New Quick Start eBook πŸ“•

Author : Jason Robert πŸ–Š
γ€°γ€°γ€°γ€°γ€°γ€°
#Book #CSharp
@ProgrammingTip
Modern JavaScript Cheatsheet 🍭

This document is a cheatsheet for JavaScript you will frequently encounter in modern projects and most contemporary sample code. πŸ‘¨πŸ»β€πŸ’»

https://t.me/pgimg/18

[ Github ] : http://bit.do/mosc
γ€°γ€°γ€°γ€°γ€°γ€°
#JavaScript #CheatSheet
@ProgrammingTip
DRY - Dont Repeat Yourself πŸ™…πŸ»β€β™‚οΈ

Duplication can lead to maintenance nightmares, poor factoring, and logical contradictions. ❌

The DRY Principle states :

"Every piece of knowledge must have a single, unambiguous, authoritative representation within a system."


πŸ”ΉπŸ”ΈπŸ”ΉπŸ”Έ

Duplication, and the strong possibility of eventual contradiction, can arise anywhere in :

β€’ Architecture
β€’ Requirements
β€’ Code
β€’ Documentation

The effects can range from mis-implemented code and developer confusion to complete system failure.

πŸ”ΊπŸ”ΉπŸ”ΊπŸ”Ή

Advantages of DRY πŸ’Ž :

β€’ Maintainability
β€’ Readability
β€’ Reuse
β€’ Testing

[ Website ] : http://bit.do/drypp

https://t.me/pgimg/19
γ€°γ€°γ€°γ€°γ€°γ€°
#DRY #Principle
@ProgrammingTip
Flat Icons πŸ’«

The largest database of free icons available in PNG, SVG, EPS, PSD and BASE 64 formats and change color of them before download in Flat Icon. 🏞

[ Website ] : https://flaticon.com
γ€°γ€°γ€°γ€°γ€°γ€°γ€°
#Icon #Tools
@ProgrammingTip
Do You Know Where Your TempData is ❓

TempData is a bucket where you can dump data that is only needed for the following request. πŸ“¦

That is, anything you put into TempData is discarded after the next request completes. ❎

This is useful for one-time messages, such as form validation errors❗️

If you need something more persistent, Session is likely what you’re looking for. πŸ“₯

By default, TempData is stored in the session.

πŸ”ΉπŸ”ΈπŸ”ΉπŸ”Έ

In this article you see how TempData works and how you can use another provider instead of Session to store the data. πŸŒ€

https://t.me/pgimg/20

[ Article ] : http://bit.do/tmpdt

γ€°γ€°γ€°γ€°γ€°γ€°
#AspMvc #TempData #Deep
@ProgrammingTip
Programming Tips πŸ’‘
Photo
Design Patterns - Explained Simply.pdf
1.2 MB
Design Patterns - Explained Simply πŸ’Ž
Author : Alexander Shvets πŸ–Š
γ€°γ€°γ€°γ€°γ€°γ€°
#Book #DesignPatterns
@ProgrammingTip
SOLID Principles : Simply Explained ✨

β€’ Single Responsibility
β€’ Open / Closed
β€’ Liskov Subsitution
β€’ Interface Segregation
β€’ Dependency Inversion

γ€°γ€°γ€°γ€°γ€°γ€°
#OOP #Principle #Solid
@ProgrammingTip
Learn JavaScript: Logical AND / OR / NOT πŸ‘Ύ

JavaScript has 3 logical operators.

They can be used with boolean or non-boolean values.

In this article we’ll be exploring logical operators when they are used with boolean values.

β€’ And &&
β€’ Or ||
β€’ Not !

https://t.me/pgimg/21

[ Article ] : http://bit.do/jsopr
γ€°γ€°γ€°γ€°γ€°γ€°
#JavaScript #Operators
@ProgrammingTip
Cdnjs πŸ“š

Cdnjs host all popular web related libraries like JavaScript libraries, CSS Frameworks, ... to speed up your website. ✨

Supports :
β€’ HTTP 2.0
β€’ HTTP
β€’ HTTPS
β€’ SPDY

πŸ”ΉπŸ”ΈπŸ”ΉπŸ”Έ

Currently, Cdnjs is one of the most famous free and public web front-end CDN services which is used by ~2,380,000 websites.

[ Website ] : https://cdnjs.com

γ€°γ€°γ€°γ€°γ€°γ€°γ€°
#JavaScript #Tools #Web
@ProgrammingTip
Gitignore ✨

Create useful .gitignore files for your project. πŸ€™πŸ»

Tell gitignore.io about your operating system, development environment and programming language of choice, and it’ll generate a .gitignore file. πŸ‘Ύ

https://t.me/pgimg/22

[ Website ] : gitignore.io
γ€°γ€°γ€°γ€°γ€°γ€°
#Git #Gitignore
@ProgrammingTip
MVC TempData – Peek vs Keep πŸ€™πŸ»

Most of the MVC developer knows that TempData is used to preserve data for a single request but reality is that TempData can pass data for next request also. πŸ€·πŸ»β€β™‚οΈ

In this article we will discuss how to persist data with TempData using Keep and Peek method.

As well we will also see the difference between Keep and Peek method. πŸ€”

https://t.me/pgimg/23

[ Article ] : http://bit.do/tmpkp

γ€°γ€°γ€°γ€°γ€°γ€°
#AspMvc #TempData
@ProgrammingTip
What is Unit Testing & Why You Need to Lean It ⁉️

Unit testing is the practice of writing code to test your code and then run those tests in an automated fashion. βœ…

πŸ”ΉπŸ”ΈπŸ”ΉπŸ”Έ

Here is an example. πŸ‘¨πŸ»β€πŸ’»

Imagine you have this function somewhere in your code.
It’s a basic calculate function that takes an input and depending on some conditions, it returns different values.

public float CalculateTax(int input) 
{
if (x) return ...;
if (y) return ...;
return ...;
}


If you want to test this function manually :

1️⃣ You have to run your application
2️⃣ Perhaps you have to login
3️⃣ Maybe do a few clicks here
4️⃣ There to get to a page where this function is used.
5️⃣ You have to fill out a form
6️⃣ Submit it
7️⃣ Verify if this function returned the right result.

And then you have to repeat all these steps, each time using different values in your form. πŸ€¦πŸ»β€β™‚οΈ

πŸ”ΈπŸ”ΉπŸ”ΈπŸ”Ή

Manual testing is expensive πŸ’Έ

As you can see, this is very time-consuming. βŒ›οΈ

This workflow to test this function may take several minutes every time❗️

Now to make matters worse, this is not the only function in your application. 🌍

In a real application, you have tens or hundreds of functions like this ❗️

As your application grows in size and complexity, the time required to manually test all the different bits and pieces increases exponentially. ⏱

So, that’s why we use Automated Testing. ♻️

πŸ”ΊπŸ”ΉπŸ”ΊπŸ”Ή

https://t.me/pgimg/24

[ Full Article ] : http://bit.do/utdd

γ€°γ€°γ€°γ€°γ€°γ€°
#CleanCode #UnitTest #TDD
@ProgrammingTip
Why you should join .NET Core and ASP.NET Core train β“πŸš€

β€’ .NET Core is a cross-platform version of .NET, that supports almost all that .NET supported. πŸ–₯

πŸ”ΈπŸ”ΉπŸ”Έ

β€’ .NET Core and ASP.NET Core are FREE and Open Source but also they are supported by Microsoft. πŸ’Έ

πŸ”ΉπŸ”ΈπŸ”Ή

β€’ ASP.NET Core is cross-platform web framework built on top of .NET Core.

It is built from scratch, however, a lot of old concepts and patterns are still the same. βœ…

πŸ”ΈπŸ”ΉπŸ”Έ

β€’ Both, ASP.NET Core and .NET Core are faster and easier to work with, than their predecessors. πŸ’¨

πŸ”ΉπŸ”ΈπŸ”Ή

β€’ Node. is fast – over 400 000 requests per second.

β€’ ASP.NET Core is blazing fast❗️– ASP.NET Core (on Linux ! ) itself can handle over 2 Million requests per second.

β€’ ASP.NET Core MVC can handle over 1 million requests per second ❕

πŸ”ΈπŸ”ΉπŸ”Έ

https://t.me/pgimg/25

[ Full Article ] : http://bit.do/aspcore

γ€°γ€°γ€°γ€°γ€°γ€°
#AspMvc #DotNet #Core
@ProgrammingTip
πŸ€– Robo 3T : GUI MongoDB Manager πŸ€–

Robo 3T (formerly Robomongo) is the free lightweight GUI for MongoDB enthusiasts.

3T will continue development of Robo 3T in parallel with its own MongoDB GUI and the good news is that it will be making Robo 3T free for all users from now on. πŸ’°

This is an exciting new step for Robo 3T and its community, which will benefit users and the wider MongoDB ecosystem. πŸ‘¨β€πŸ’»


Native and cross-platform MongoDB manager
Whatever platform you use today - Robo 3T is available for you. Distributed as a native application, fast and snappy Robo 3T uses very little of your machine resources. ♻️

β€’ Windows users : 52%
β€’ Mac OS X users : 32%
β€’ Linux users : 16%

[Website] : http://robomongo.org/

γ€°γ€°γ€°γ€°γ€°γ€°
#mongo #robomongo #robo3t
@ProgrammingTip
https://t.me/pgimg/26