teleren/devto huggingface dataset:
The Twelve-Factor App: Port binding
Tags: learning, writing, architecture, devjournal
Published: 2023-12-29 17:26:49

### Export services via port binding

---

At times, the server functions as a web server container where the web app operates as a module within the container. For instance, a PHP app might run as a module inside Apache HTTPD, or Java apps might function within Tomcat.

**The twelve-factor app is entirely self-contained** and doesn't depend on the runtime injection of a web server into the execution environment to establish a web-facing server. Instead, **the web app exports HTTP as a service by binding to a port**, which serves as a listening port for incoming requests. In a local environment, developers access the app by visiting `http://localhost:3000`. In a deployment environment, a routing layer manages the routing of requests from a public-facing hostname to the port-bound web processes.

This is commonly achieved by using dependency declarations to incorporate the web server library into the app, such as using `Thin` for `Ruby`.

Furthermore, this approach signifies that any service can be exported by port binding, awaiting incoming requests. It's important to note that by doing so, one app can serve as the backing service for another app.

_This Twelve-Factor App post series is a means for me to consolidate the knowledge I've gained while studying these rules. Please feel free to visit [the site (https://12factor.net/) for more detailed explanations. That's all folks!_
My 2023 recap in two words: THANK YOU
Tags: career, learning
Published: 2023-12-29 17:24:51

If I look at my career, 2023 has been by far the best year of my life but the recap will be quite short, all I want to say is THANK YOU.

This year’s biggest highlight is being surrounded by some amazing human beings that are helping me become who I am today and who I want to be tomorrow.

Thanks to all my colleagues in Claranet supporting me on a daily basis, I’m getting better not just at coding but also at cooperating with the clients, and managing projects and teams.

I got trusted enough to also get involved in the recruitment process that is draining so much energy but wow, what an experience it is and how much there is to learn from others.

Thank you to all the friends I meet at conferences, even if we meet in person only for a few hours during the entire year, there’s so much value in that! And I’m not even talking about technical knowledge but strengthening those human connections is really the biggest win.

And last but not least, thank you to everyone watching my videos on YouTube and reading my articles as you’re giving me the motivation to keep sharing content online for free in my spare time.

You see that Github star plate in the background, it really means a lot to me and it’s there thanks to you!

I promise I’ll keep doing my best in sharing knowledge and participating in projects, giving back to the community at least as much as what the community is giving to me.

And with that said, thank you all for being part of this amazing 2023, I hope 2024 will be again the best year of my life… until 2025!

Happy New Year everyone!

---

Thanks for reading this article, I hope you found it interesting!

I recently launched my Discord server to talk about Open Source and Web Development, feel free to join: https://discord.gg/bqwyEa6We6

Do you like my content? You might consider subscribing to my YouTube channel! It means a lot to me ❤️
You can find it here:
[![YouTube](https://img.shields.io/badge/YouTube:%20Dev%20Leonardo-FF0000?style=for-the-badge&logo=youtube&logoColor=white)](https://www.youtube.com/c/@DevLeonardo?sub_confirmation=1)

Feel free to follow me to get notified when new articles are out ;)
{% embed https://dev.to/balastrong %}
Do You Remember "Semantic HTML"? 🤣
Published: 2023-12-29 17:11:55






```react
<div>
  <label {...getLabelProps()}>Enter a fruit</label>
  <div
    style={{display: 'inline-block'}}
    {...getRootProps({}, {suppressRefError: true})}
  >
    <input {...getInputProps()} />
  </div>
  <ul {...getMenuProps()}>
    {isOpen
      ? items
          .filter(item => !inputValue || item.value.includes(inputValue))
          .map((item, index) => (
            <li
              {...getItemProps({
                key: item.value,
                index,
                item,
                style: {
                  backgroundColor:
                    highlightedIndex === index ? 'lightgray' : 'white',
                  fontWeight: selectedItem === item ? 'bold' : 'normal',
                },
              })}
            >
              {item.value}
            </li>
          ))
      : null}
  </ul>
</div>
```
Controlling Auto Semicolon in Visual Studio Code for CSS: A Quick Guide
Tags: css, codenewbie, vscode, tutorial
Published: 2023-12-29 17:03:16

Visual Studio Code (VS Code) is a powerful and versatile code editor, widely used by developers for various programming languages, including HTML, CSS, and JavaScript. While it offers helpful features, some developers might find certain auto-completions intrusive or unnecessary. In this blog post, we will focus on one specific annoyance for CSS developers – the automatic insertion of semicolons after CSS properties – and explore how to disable this feature in VS Code.

**Disabling Auto Semicolon in Visual Studio Code:**

VS Code’s auto semicolon feature can be particularly bothersome for those who prefer not to have semicolons automatically added at the end of CSS properties. Fortunately, there are a couple of ways to disable this feature.

**Option 1:** Through the Visual Studio Code UI

Open Visual Studio Code.
Navigate to “Settings” by clicking on the gear icon in the bottom left corner or by pressing Ctrl + ,.
Click on “Extensions” in the sidebar.
Scroll down and find the “**CSS**” extension.
Look for the option labeled “Complete Property With Semicolon” and uncheck it.
**Option 2:** Using the Settings Editor

Open the Settings editor by pressing Ctrl + , and clicking on the open settings icon in the top right corner.
In the search bar, type “**Complete Property With Semicolon**” to quickly locate the relevant setting.
Change the value from true to false.

```
// Insert semicolon at the end of the line when completing CSS properties
"scss.completion.completePropertyWithSemicolon": false,
```
**Exploring the Configuration File:**

For those who prefer a more hands-on approach or want to document these changes in a configuration file, it’s possible to modify the settings.json file directly. This file holds various configurations for VS Code.

Open the command palette by pressing Ctrl + Shift + P and type “Preferences: Open Settings (JSON)”.
Add or modify the following configuration to disable the auto semicolon feature:

```
// Insert semicolon at the end of the line when completing CSS properties
"scss.completion.completePropertyWithSemicolon": false,
```
By following these simple steps, you can regain control over the auto semicolon feature in Visual Studio Code for CSS. Whether you choose to disable it through the UI or directly edit the configuration file, the flexibility of VS Code allows developers to customize their coding environment to suit their preferences. 
**Happy coding!**
Vecteezy
Tags: webdev, javascript, programming, beginners
Published: 2023-12-29 16:53:17

Vecteezy là gì?
[Vecteezy](https://www.wsovn.net/vecteezy-annual) : Chúng tôi hiểu rằng con đường sáng tạo không bao giờ thẳng. Chúng tôi mong muốn cung cấp cho các nhà thiết kế những nguồn lực mà họ cần để họ làm việc tốt nhất, dù họ ở bất cứ đâu trong quá trình sáng tạo. Với nhiếp ảnh, vectơ và video mới được tạo ra bởi cộng đồng tuyệt vời của chúng tôi và việc cấp phép không cần lo lắng, chúng tôi muốn giúp bạn tự tin tạo ra.
FE – Vecteezy – $348
Hàng triệu tài nguyên miễn phí
Truy cập vào toàn bộ thư viện hình ảnh + video của chúng tôi
Tải xuống ảnh, vector và video không giới hạn
Toàn quyền thương mại
Quyền truy cập trình chỉnh sửa Vecteezy
Không cần ghi công
Hỗ trợ ưu tiên
Tải xuống nhanh hơn và không có quảng cáo
Mua ngay tại: [https://www.wsovn.net/vecteezy-annual](https://www.wsovn.net/vecteezy-annual)
🚀 Explore Breadth First Search (BFS): Navigating General Trees with Examples! 🎥
Tags: programming, algorithms, tutorial, coding
Published: 2023-12-29 16:52:54

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gvc0q0yjbs2ndv6t75fb.png)

Hello, fellow learners! In my latest video, I guide you through the Breadth First Search (BFS) algorithm, focusing on its application in the realm of general trees. Join me as we delve into the intricacies of BFS, unraveling its steps, and witnessing its effectiveness in traversing and exploring general tree structures.

🎥 Watch the video here: https://youtu.be/XQy3yYAwcQ4?si=OfqPyOekbgoPErHe
🔗 Access the code on GitHub: https://github.com/Vinay352/Leetcode_Complete_Solution/blob/main/CreateBinaryTree_DFS_BFS.java

Your insights and questions are invaluable, so please share your thoughts in the comments. Let's enhance our understanding of BFS together! 💡🌲

Stay connected:
🎥 YouTube: https://www.youtube.com/@VinayJainDev3097
📚 Medium: https://medium.com/@vinay.j3097
📝 Dev.to: https://dev.to/vinay_jain_dev
🔗 GitHub: https://github.com/Vinay352
🐦 Twitter: https://twitter.com/vinayj3097
📸 Instagram: https://www.instagram.com/vinay_jain_dev/
📘 Facebook: https://www.facebook.com/vinayj3097/
India plans to restrict access to cryptocurrency exchange platforms such as Binance and Kraken.
Tags: cryptocurrency, news, bitcoin
Published: 2023-12-29 16:42:13

The Indian government agency Financial Intelligence Unit declared on Thursday that nine global crypto exchanges, including Binance, Kraken, Kucoin, and Mexc, are operating illegally in India without complying with the local anti-money laundering act and asked the IT Ministry to block their websites.

FIU has issued show cause notices to all nine firms for failing to comply with India's anti-money laundering regulations. Global crypto exchanges cannot avoid these guidelines simply because they do not have a physical presence in the country, according to the government agency.

The report stated that although some offshore entities were serving a large number of Indian customers, they were not being registered and falling under the AML and CFT framework.

In March this year, cryptocurrencies were included within the scope of anti-money laundering and countering the financing of terrorism (AML/CFT) framework in India. A total of 31 crypto companies have registered with FIU, according to the statement.

In recent months, Indian traders have shifted their focus to global cryptocurrency platforms in an apparent attempt to avoid paying taxes. India began taxing virtual currencies last year, imposing a 30% tax on gains and a 1% deduction on each crypto transaction.

Despite India-based crypto exchanges such as CoinSwitch Kuber, CoinDCX, and WazirX requiring rigorous know-your-customer verifications before onboarding new users, the same hasn't been true of many global platforms. (Trading volume on WazirX has dropped by a staggering 97% in two years partly because many traders have moved to global apps.)

India's law has been violated by several other exchanges, including Huobi, Gateio, Bittrex, Bitstamp, and Bitfinex (Coinbase stopped signing up consumers in India months ago).

The FIU IND's recent directive to offshore Virtual Digital Assets Service Providers (VDA SPs) will help mitigate risks and create a secure VDA ecosystem, according to Sumit Gupta, co-founder and chief executive of CoinDCX.

In an interview with TechCrunch last year, Binance founder CZ Zhao stated that the company was not interested in entering the Indian market due to the lack of a crypto-friendly environment in the region.
A guide to Data Binding in Angular
Tags: javascript, angular, beginners, tutorial
Published: 2023-12-29 16:37:08

Data binding in Angular is a mechanism to synchronize data between the model (business logic) and the view (what the user sees). It allows for dynamic and interactive web applications. Angular provides several types of data binding:

- **Interpolation**: Uses `{{}}` syntax to render data
- **Property Binding**: Binds a property of a DOM element to a field in your component
- **Event Binding**: Allows the application to respond to user input in the form of events
- **Two-Way Binding**: Combines property and event binding

**Understanding Interpolation and Property Binding**

**Interpolation**

- **Usage**: Mainly for displaying dynamic data
- **Syntax: `{{ expression }}`**
- **Example:`<div>{{ title }}</div>`**

**Property Binding**

- Usage: To set an element property to a non-string data value.
- **Syntax: `[property]="expression"`**
- **Example: `<img [src]="imageUrl">`**

**Exploring Event Binding**

Event binding allows your application to respond to user actions like clicks, mouse movements, keystrokes, etc.

- **Syntax**: `(event)="handler`"
- **Example**: `<button (click)="save()">Save</button>`

**Two-Way Binding**

Two-way binding is a powerful feature that allows your model and view to be in sync. It's useful for forms and anywhere you need to both display and update a value.

- **Syntax**: `[(ngModel)]="property"`
- **Example**: `<input [(ngModel)]="name">`


**Advanced Concepts in Data Binding**

**Custom Property and Event Bindings**

You can create custom properties and events in your components, which can be bound using the same syntax.

**Directives and Binding**

Angular directives like `*ngFor` and `*ngIf` use binding to manipulate DOM elements. Understanding how they interact with your data is crucial.

**Pipes and Data Transformation**

Pipes allow you to transform displayed data without altering the original data source. For example, you can format dates and numbers, or limit the number of characters in a string.

**Reactive Forms**

Reactive forms provide a model-driven approach to handling form inputs whose values can be easily synced with the UI.

**Observables and Async Pipe**

Angular integrates with RxJS, a library for reactive programming. You can bind to Observables directly in your templates using the async pipe, which subscribes and unsubscribes automatically.

**Conclusion**

Data binding is a fundamental concept in Angular, providing a seamless way to synchronize data between the model and the view. It starts with simple interpolation and property bindings and extends to more complex scenarios involving custom components, directives, and reactive forms. Mastering data binding is key to developing interactive and dynamic Angular applications.
Bridging Technology and Business: The Journey of an AX Expert
Tags: dynamicsax
Published: 2024-01-03 05:10:24

---
title: Bridging Technology and Business: The Journey of an AX Expert
published: true
date: 2023-12-29 16:29:39 UTC
tags: dynamicsax
canonical_url: 
---

Sergen K., an AX Expert and ERP Analyst based in Lisbon, Portugal, showcases a unique blend of technical skill and business acumen in Dynamics AX 2012/R3. With 4.5 years of experience, Sergen is now seeking new challenges in D365 FO, open to roles as a Functional Consultant or Entry Level Developer.

His journey in Dynamics AX includes national and international implementation and upgrade projects in manufacturing and retail. Sergen’s strengths lie in X++ programming, utilizing MorphX for development, and creating insightful reports with SSRS and Power BI. His ability to collaborate effectively with diverse teams and translate complex technical requirements into business solutions makes him a valuable asset.

Sergen’s transition to D365 FO represents a commitment to staying ahead in the dynamic field of ERP systems, promising innovative solutions for future clients.

[https://www.hiredynamicsdevelopers.com/consultants/ax-expert-and-erp-analyst/](https://www.hiredynamicsdevelopers.com/consultants/ax-expert-and-erp-analyst/)

![](https://cdn-images-1.medium.com/max/1024/1*TA4dwnUf6sbg6kT7-T3Syw.jpeg)
Maximizing CRM Efficiency with a Microsoft Dynamics 365 Consultant
Published: 2024-01-03 05:09:46

---
title: Maximizing CRM Efficiency with a Microsoft Dynamics 365 Consultant
published: true
date: 2023-12-29 16:25:57 UTC
tags: 
canonical_url: 
---

![](https://cdn-images-1.medium.com/max/1024/1*0js55nyo1wKl0aiakp0Alg.jpeg)

In the rapidly evolving world of CRM systems, the expertise of a Microsoft Dynamics 365/Power Platform Functional Consultant like Arvid O. is invaluable. Specializing in configuring and customizing various versions of Microsoft CRM, Arvid’s skills extend from Dynamics 365 Sales and Customer Service modules to intricate workflow and data management solutions.

With proficiency in Power Platform applications including Power BI, Power Apps, and Power Automate, Arvid’s consultancy ensures a comprehensive approach to CRM optimization. His ability to integrate Dynamics 365 with diverse systems, coupled with his experience in training and guiding teams, makes him a sought-after consultant.

Businesses seeking to enhance their CRM efficiency would greatly benefit from Arvid’s part-time consultancy services, tapping into his deep knowledge and experience in Dynamics 365 CRM, Finance, Operations, and Supply Chain Management modules.

[https://www.hiredynamicsdevelopers.com/consultants/arvid-o-certified-microsoft-dynamics-365-power-platform-functional-consultant/](https://www.hiredynamicsdevelopers.com/consultants/arvid-o-certified-microsoft-dynamics-365-power-platform-functional-consultant/)
Unleashing Digital Transformation: The Expertise of a D365 Solution Developer
Tags: microsoftdynamics365
Published: 2024-01-03 05:09:11

---
title: Unleashing Digital Transformation: The Expertise of a D365 Solution Developer
published: true
date: 2023-12-29 16:23:27 UTC
tags: microsoftdynamics365
canonical_url: 
---

In today’s digital landscape, businesses seek transformative solutions to stay ahead. Enter Artem A., a skilled D365 Solution and Navision Developer, offering part-time consultancy to revolutionize your business operations. With a rich history in IT and services, Artem excels in Business Process, Requirements Analysis, and Software Development, with a specialty in .NET Framework and C#.

His expertise in Microsoft Dynamics NAV and Dynamics 365 Business Central is unparalleled. Artem’s proficiency extends to customizing Dynamics NAV modules, ensuring a tailored approach for every client. His deep knowledge in C/AL, AL programming, and development environments like C/SIDE and Visual Studio Code, allows for intricate and effective solutions.

![](https://cdn-images-1.medium.com/max/1024/1*V4L_lImFyk-l2Vkj03hw7A.jpeg)

[https://www.hiredynamicsdevelopers.com/consultants/artem-a-d365-solution-developer-navision-developer/](https://www.hiredynamicsdevelopers.com/consultants/artem-a-d365-solution-developer-navision-developer/)
Summary of results
Tags: python, flask, rust, sql
Published: 2023-12-29 15:46:21

Completely out of the blue I realized that I've [done](https://github.com/antonovmike/flask_tutorial) almost all the tasks from the Flask website. Although I constantly feel like I'm slacking and generally inefficient. 

- ✅ A detail view to show a single post. Click a post’s title to go to its page.
- ✅ Like / unlike a post.
- ✅ Comments.
- ✅ Tags. Clicking a tag shows all the posts with that tag.
- ✅ A search box that filters the index page by name.
- ✅ Paged display. Only show 5 posts per page.
- ✅ Upload an image to go along with a post.
- ➡️ Format posts using Markdown.
- ➡️ An RSS feed of new posts.

Unfortunately due to being depressed due to failures in finding job as a Rust junior developer I write like a robot. (Let’s be honest: Junior jobs on Rust have not been, are not, and it is better to think they won't be) It's not a very pleasant state to be in. In addition, the excessive formalization of work leads to a poor understanding of what exactly I'm doing. But that's a matter of exhaustion and lack of emotions. It's can be solved by simply getting a paycheck and finally being able to afford shawarma. Because two years of doing something that has no use and seeing your money run out will make anyone depressed.

Got to know the coverage library a bit more and it's pretty handy stuff. Especially displaying percentage coverage of modules by tests. The library is called "coverage" for a reason:
```bash
coverage run -m pytest
```
Unfortunately, I don't always understand how to increase the percentage of coverage by tests.

I also liked the database approach. Now that I have to experiment periodically, it's very convenient to be able to simply disable resetting individual tables when resetting the entire database. For example, I have disabled resetting the post and user tables. Although perhaps this is just a temporary convenience. Let's wait and see.

And finally the command:
```bash
python freeze requirements.txt
```
Sorry, sorry, but the Rust file Cargo.toml is cooler and more convenient. But at least this way.

All in all, since switching from Rust to Python in September 2023 I've been kind of know and can do more, but I'm not one step closer to getting a job, nor do I feel like I've gotten to know and understand anything… So the bottom line is kind of dismal. Of course, I can lie on social networks, trying to put it all in a positive light, and then lie at the job interview to company representatives, who in turn are not quite honest with applicants… isn't that a lot of lies mankind produces? That is the philosophically-socially-pointless note on which I will end this post.

Take care

_Image created by Bing_ [The character costumes don't fit my query, but I don't have the heart to come up with a new query]