Programming Tips 💡
51.5K 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
EasyCompressor 📦

EasyCompressor is an open-source compression abstraction library that supports and implements many compression algorithms such as Zstd, LZMA, LZ4, Snappy, Brotli, GZip and Deflate. 🗂

It is very useful for using along with Distributed Caching or storing files in database.

[ GitHub ] : github.com/mjebrahimi/EasyCompressor

〰️〰️〰️〰️〰️〰️
#Compression #CSharp #DotNet
@ProgrammingTip
Domain-Driven Design: A Recipe for a Pragmatist 🦒

Why are DDDs usually approached from the wrong side? And which side do you want? What do giraffes and platypuses have to do with all this?

In this article, I will tell you what Domain-Driven Design is and what is its essence.

[ Article ] : kutt.it/ddd-recipe

〰️〰️〰️〰️〰️〰️
#DDD
@ProgrammingTip
Blazor WebAssembly 3.2.0 now available 🚀

I’m thrilled to announce that Blazor WebAssembly is now officially released.

This is a fully-featured and supported release of Blazor WebAssembly that is ready for production use.

Full stack web development with .NET is now here! ⚡️

[ Article ]: https://devblogs.microsoft.com/aspnet/blazor-webassembly-3-2-0-now-available/

〰️〰️〰️〰️〰️〰️
#Blazor #DotNet #Core
@ProgrammingTip
Bootstrap 5 alpha! 🎉

Bootstrap
is one of the open source that many developers love, including me. So what do we expect of the new changes when Bootstrap 5 is released?

Features :
• jQuery removed
• Updated forms
• Enhanced grid system
• CSS custom properties by dropping support for Internet Explorer

Comming soon: RTL, offcanvas, and more 💎

Head to https://v5.getbootstrap.com to explore the new release. 🔥

〰️〰️〰️〰️〰️〰️
#Bootstrap #CSS
@ProgrammingTip
The S.O.L.I.D Principles in Pictures 🤖

There are so many great articles online about SOLID but I rarely see any examples with pictures. This makes it a bit difficult for visual learners like me to learn while staying engaged.

So the main aim of this article is to get a better understanding of these principles using illustrations and emphasizing the goal for each principle. 🌈

[ Article ] : kutt.it/solid

〰️〰️〰️〰️〰️〰️
#SOLID #Principles
@ProgrammingTip
Why I created another React component library 🌈

[ Article ] : https://kutt.it/ARC
[ Github ] : https://github.com/sha-el/sha-el-design

〰️〰️〰️〰️〰️〰️
#React #JavaScript
@ProgrammingTip
Secrets of a .NET Professional 👾

In this post, we’ll go through technical and non-technical ideas that have helped me through some of my toughest projects.

[ Article ] : https://kutt.it/DotSec

〰️〰️〰️〰️〰️〰️
#DotNet
@ProgrammingTip
Awesome Microservices .NET Core Resources 😎

The best resources for Microservices in .NET Core 👾

[ Github ] : kutt.it/dotnet-aws

〰️〰️〰️〰️〰️〰️
#DotNet #DotNetCore #AspNetCore #Microservice
@ProgrammingTip
PLURALSIGHT FREE WEEK IS HERE! 💎

In honor of our annual technology skills conference Pluralsight LIVE, we’re making our full library of video courses on machine learning, IT Ops, software development, security, cloud and more free for the week.

Sign up now to create your free Pluralsight account and get ready for your week of unlimited upskilling. 🔥

Your free Pluralsight access will expire Sunday, October 18th at 11.59 p.m. MT.

https://www.pluralsight.com/free

〰️〰️〰️〰️〰️〰️
#Pluralsight #Course
@ProgrammingTip
Working with Expression Trees in C# 🗂

Expression trees is an obscure, although very interesting feature in .NET. Most people probably think of it as something synonymous with object-relational mapping frameworks, but despite being its most common use case, it’s not the only one. There are a lot of creative things you can do with expression trees, including code generation, transpilation, metaprogramming, and more.

In this article I will give an overview of what expression trees are and how to work with them, as well as show some interesting scenarios where I’ve seen them used to great effect.

[ Article ] : kutt.it/exptree

〰️〰️〰️〰️〰️〰️
#CSharp #Expressions
@ProgrammingTip
Why You Shouldn’t Use OFFSET and LIMIT For Your Pagination

[ Article ] : kutt.it/paginate

〰️〰️〰️〰️〰️〰️
#SQL #Pagination
@ProgrammingTip
DDD, Hexagonal, Onion, Clean, CQRS, … How I Put It All Together 🚀

I start by recalling EBI and Ports & Adapters architectures. Both of them make an explicit separation of what code is internal to the application, what is external, and what is used for connecting internal and external code.

Furthermore, Ports & Adapters architecture explicitly identifies three fundamental blocks of code in a system:

What makes it possible to run a user interface, whatever type of user interface it might be.

- The system business logic, or application core, which is used by the user interface to actually make things happen.

- Infrastructure code, that connects our application core to tools like a database, a search engine or 3rd party APIs.


[ Article ] : kutt.it/Archs

〰️〰️〰️〰️〰️〰️
#Architecture #Design
@ProgrammingTip
How to roll your own VPN | WireGuard Tutorial 🔐

WireGuard® is a fast, free, and open-source VPN connection protocol. By hosting your own VPN with Wireguard and Linode, you have total control over your security and privacy.

[ YouTube ] : youtube.com/watch?v=Q1I6-clkQmQ

〰️〰️〰️〰️〰️〰️
#VPN #WireGuard
@ProgrammingTip
Implementing Domain Driven Design

This is a practical guide for implementing the Domain Driven Design (DDD). While the implementation details rely on the ABP Framework infrastructure, core concepts, principles and patterns are applicable in any kind of solution, even if it is not a .NET solution. 💎

[ Article ] : kutt.it/ddd-impl

〰️〰️〰️〰️〰️〰️
#DDD #DomainDrivenDesign
@ProgrammingTip
Proto.Actor 💎

Cross-platform actors for .NET, Go, Java and Kotlin. ⚡️

The Actor Model provides a higher level of abstraction for writing concurrent and distributed systems. It alleviates the developer from having to deal with explicit locking and thread management, making it easier to write correct concurrent and parallel systems.

Features :
• Simple Concurrency & Distribution
• Extreme Performance
• Resilient by Design
• Built on standards
• Virtual Actors
• Distributed by Default
• Supervision & monitoring
• Communications on gRPC


[ Website ] : https://proto.actor
[ Github ] : https://github.com/AsynkronIT/protoactor-dotnet

〰️〰️〰️〰️〰️〰️
#Actor #ActorModel #CSharp #Go #Kotlin
@ProgrammingTip
Awesome Software Architecture 🕶

Curated list of awesome articles and resources to learn and practice about software architecture, patterns and principles. this repository will be updated continuously, keep yourself up to date.

[ Github ] : kutt.it/awsArch

〰️〰️〰️〰️〰️〰️
#Architecture #Awesome
@ProgrammingTip
Vuestic UI - Free and Open Source UI components library for Vue 3 🌈

Vuestic UI is a components library for Vue 3. 💎

It features more than 50 highly customisable components, forever free and Open Source. Vuestic Admin (https://github.com/epicmaxco/vuestic-admin) is a great example of a real-world web application based on Vuestic UI and is used to quicly bootstrap frontends of web applications.


[ Github ] : https://github.com/epicmaxco/vuestic-ui

〰️〰️〰️〰️〰️〰️
#FrontEnd #Vue #UiKit
@ProgrammingTip
The Soul of Erlang and Elixir • Saša Jurić • GOTO 2019

Whether you're developing a small web site or a large-scale distributed system, Erlang and Elixir are great tools for building server-side systems. Both languages can help you start quickly and deal with highly complex problems at a large scale. 💨

This talk aims to explain what makes Erlang and Elixir suitable for such tasks. We'll look past the syntax and the ecosystem, focusing instead on the concurrency model of these languages.

Combining a bit of high-level theory and a couple of demos, we'll examine some important properties of Erlang/Elixir concurrency, with a special emphasis on why these properties are very relevant when building highly available systems.

The talk targets experienced backend developers, but no knowledge of Erlang or Elixir is required.


[ YouTube ] : youtu.be/JvBT4XBdoUE

〰️〰️〰️〰️〰️〰️
#Concurrency #Erland #Elixir
@ProgrammingTip
Lowering in C#: What's really going on in your code? 👾

If you're attending NDC you probably think you know what a foreach loop does - it iterates over a collection, right?

BUT do you know how? Do you know what the C# compiler does when you write a foreach loop? What about a lambda expression? Or the re-entrant magic that is a yield return statement

In this session we'll dive into Roslyn, the C# compiler, and learn about lowering and how it helps the compiler do its job, and what it does to your code. In the process you'll gain the skills to identify some of the common performance pitfalls of .NET, as well as just get a deeper understanding of what the code you write really does. 💎


[ YouTube ] : https://youtu.be/gc1AxbNybvw

〰️〰️〰️〰️〰️〰️
#CSharp #LowLevel #Compiler #Roslyn
@ProgrammingTip