teleren/devto huggingface dataset:
My 1st watercooled PC build
Tags: pcbuild, watercooled
Published: 2022-12-26 11:53:28

---
title: My 1st watercooled PC build
published: true
description: 
tags: pcbuild, watercooled
# cover_image: https://direct_url_to_image.jpg
# Use a ratio of 100:42 for best results.
# published_at: 2022-12-26 11:44 +0000
---

I built this last year but never thought to share it on Dev, so here were are. 

{% embed https://youtu.be/Kl469PkeK4Q %}

Link to PC Part Picker page https://pcpartpicker.com/b/bCQqqs

I hadn't built a PC since about 2010 and spotted the Antec Striker case a couple of times and had to build one. Ended up going waay over budget on this but I'm happy with how it turned out.

I had a few compatibility warnings on here about the GPU being too long for the case, but because it sits vertically at the front of it I just ignored it and figured I'd make it work. It fits just fine. The EK D5 water pump was way bigger than I expected, and would have completely stopped me putting the glass back on the case if I mounted it where I originally planned to, so I ended up drilling mounting holes into one of the inner plates of the Striker case so I could mount the reservoir and the pump back to back on the same plate.

You can't really pick watercooling parts on PCPP, so here's the details - I'm using a 250mm Barrow boxfish reservoir - I looked at a bunch of reservoirs and the measurements of this seemed like it would fit the space nicely. CPU water block is a Phanteks Glacier C350a. Radiator and all of the fittings and the little water filter are all by Bykski. Water pump is an EK-Quantum Inertia D5. I used 14mm acrylic tubing for everything because it looked like it would be the clearest and nicest looking and I like a challenge. 14mm was an arbitrary diameter, I'd happily have used 16 or 12 either. It worked out well though but it is a pain in the *** to cut... The fans are 120mm EK-Vardar X3Ms.

You can't get a water block for this GPU yet, but when you can I'll extend the loop to cool that too. The pump is overkill for the current setup but will work well for when there's another rad and water block. I haven't had a chance to game on this too much yet, but so far it's handled anything I've thrown at it.

Pain points when I was building it: I had two separate deliveries from UPS feel damp when they arrived. Because of covid restrictions they were just dumping packages at the entrance to our building and not waiting for people to come out. The first package had the SSD and the CPU. Box felt a bit damp but I thought maybe it was just from the cold. A few weeks later I had another delivery for the motherboard, fans and pump. This time the outer box was perfect, and when I opened it everything was destroyed with water. It was like they'd been sitting in the rain for a few days and then when UPS saw how bad it was they put the contents into a fresh box and just delivered it. I've attached pics of how bad it was. Luckily the motherboard was in a static bag inside the box and works fine - but I was extremely pissed at the time. Still am. Will never use UPS again after it.

Rant over, thanks for looking!
Knowledge Management Challenges Any Startup Faces
Tags: knowledgemanagement, busines, startup
Published: 2022-12-26 11:51:47

_Knowledge management has become irreplaceable for companies striving for exclusive competitive advantage, innovativeness, and flawless workflows. Early-stage startups have a good chance to establish a solid knowledge management foundation before scaling. The article tells what challenges follow the process and how to treat them._

Startups often face some challenges when it comes to knowledge management. They include:

- **Limited resources:** Startups typically have limited resources, including time, money, and personnel, making it challenging to implement and maintain a knowledge management system.
- **Limited structure:** Startups may have a different level of design and organization than larger companies, making it harder to manage and share knowledge effectively.
- **Rapid growth:** As a startup grows and expands, it can be difficult to keep track of all the new information and knowledge being generated and shared.
- **Limited technology:** Many startups may have a different level of technology and infrastructure than larger companies, making it harder to implement and maintain a knowledge management system.
- **Limited communication channels:** Startups may have a different number of communication channels and tools than larger companies, making it harder for employees to share knowledge and collaborate effectively.
- **Limited institutional knowledge:** As a startup grows and hires new employees, it can take time to ensure that new hires have access to the company's institutional knowledge and can contribute to it.

To overcome the challenges, startup management may put more effort into strategic planning, change management, business process planning, and more.

Read a new article by OneBar to learn about all challenges and ways to treat them: [Knowledge Management Challenges Any Startup Faces](https://blog.onebar.io/knowledge-management-challenges-any-startup-faces-7404e810e9dd).
Querying GROQ for table of contents
Tags: webdev, sanity, tip
Published: 2022-12-26 11:46:51

A nice tip I came across when creating a **Table of Contents** based on `H2` elements in an article on [Sanity.io](https://sanity.io/) site using **GROQ **statements. Instead of serializing the content and then using DOM to find the `H2` elements post-rendering, I adjusted the **GROQ** statement to get me the `H2` elements in the body, in a separate array.

```
*[slug.current == "${slug}"&&_type=="post"] | order(publishedAt desc)
{
  publishedAt, _id,
  // ... other projections
  body[]{...}
  // then this: get body's children where style of child is "h2",
  // then project to text property only
  'toc': body[style == 'h2']{
    'text': children[0].text
  }
}[0]
```

The `body` property is the field that holds the rich text (*portable *text in Sanity), and it is made up of arrays, each having a `style` property, which contains the HTML style used to generate the block. You can use any query depending on what you need to attain, here is a [query cheat sheet](https://www.sanity.io/docs/query-cheat-sheet).

The `children` is the sub-property of `h2` and I know for a fact it has one element, you could have a different setup so take notice. That child has a property: `text`, and that is what I aim for.

Afterwards; I can set up the slug function locally, then post-process the `H2` elements to have the `id` property set up as well. From that point forward it's just vanilla.

Twenty-two is over.

#### RESOURCES

[GROQ cheat sheet](https://www.sanity.io/docs/query-cheat-sheet)

#### RELATED POSTS
[Get results and total count of Sanity records by GROQ](https://garage.sekrab.com/posts/get-results-and-total-count-of-sanity-records-by-groq)
Course Schedule I & II
Tags: javascript, leetcode
Published: 2022-12-26 11:45:56

[Course Schedule II](https://leetcode.com/problems/course-schedule-ii/description/)

[Course Schedule I] (https://leetcode.com/problems/course-schedule/)

```js
/**
 * @param {number} numCourses
 * @param {number[][]} prerequisites
 * @return {boolean}
 */

var findOrder = function (numCourses, prereqs) {
  if (numCourses === 0) {
    return [];
  }

  const n = prereqs.length;
  let adjList = new Array(numCourses);
  for (let i = 0; i < numCourses; i++) {
    adjList[i] = [];
  }

  for (let i = 0; i < prereqs.length; i++) {
    const [newClassId, newPrereqId] = prereqs[i];
    adjList[newPrereqId].push(newClassId);
  }

  // Count the indegress of the adjacency list
  let indegs = indegrees(adjList);

  // Get all the zero indegrees
  let zeroIndegree = indegs.reduce((acc, element, index) => {
    if (element === 0) acc.push(index);

    return acc;
  }, []);

  // Instantiate an array for topological sorting
  let sorted = [];
  // Topological sort via indegrees
  while (zeroIndegree.length > 0) {
    let nodeIndex = zeroIndegree.pop();
    sorted.push(nodeIndex);

    // Remove this node from the list and update all the nodes it pointed to. Meaning that they have one less prerequisite
    // and then if they now have 0 prereqs, add it to the queue
    for (let i = 0; i < adjList[nodeIndex].length; i++) {
      const neighbourId = adjList[nodeIndex][i];

      indegs[neighbourId]--;

      if (indegs[neighbourId] === 0) {
        zeroIndegree.push(neighbourId);
      }
    }
  }
  // Only return the topological sort if the number of nodes
  // in the sorted array is equal to the number of courses
  // otherwise that means there was some amount of nodes
  // without an indegree of 0 by the end of it (cyclic graph)

  // This commented line below solves Course Schedule II
  // return (sorted.length === numCourses) ? sorted : [];

  if (sorted.length === numCourses) {
    //
    return sorted;
  } else {
    return [];
  }
};

// Returns an array whos ith index contains the indegree for the ith class
function indegrees(adj) {
  let indegs = new Array(adj.length).fill(0);

  for (let i = 0; i < adj.length; i++) {
    const curList = adj[i];

    for (let j = 0; j < curList.length; j++) {
      indegs[curList[j]]++;
    }
  }

  return indegs;
}

```
Explain X Like I'm Five
Tags: javascript, css
Published: 2022-12-26 11:45:08

Hello there,

I try to write a JS code that generates DIV elements with CSS classes in an HTML file. For example, if I want to make 50 DIV boxes, I just enter 50 and FOR loop will generate these 50 DIV boxes.
Currently, I have a code that gets the element by ID then makes innerHTML, but it's not correct as it generate DIV for one time then stopped.
* Pls find the below code snippet: 

```
var createDiv = "<div class='someClass' style='background-color: skyblue;' id='someID'>I'm BOX</div>";
document.getElementById("someElement").innerHTML = createDiv; /* This will show */
document.getElementById("someElement").innerHTML = createDiv; /* This will not show

```
.
Above snippet only for example, also if I can print tiwse then I will make the FOR loop.

Help me pls with this. Thanks alot
How Can Mobile App Development Trends 2023 Improve Your Business?
Tags: mobile, github, webdev
Published: 2022-12-26 11:30:52

People and organizations are increasingly using mobile applications as they have grown in importance. The alternatives available to those [developing mobile applications](https://www.sufalamtech.com/flutter-app-development) are increasing as mobile technology continues to advance.

Web, mobile, on-demand, IoT, and many other types of apps are being developed by developers. Between 2022 and 2026, 6.58% CAGR is predicted for mobile app revenue between 2022 and 2026, which will bring the industry to [$542.80 billion](https://appinventiv.com/blog/on-demand-mobile-app-economy-statistics/).

Keeping your business at the forefront of advancement in this fast-paced industry requires an understanding of the [top application development trends for 2023](https://dev.to/omdevsinhgohil/how-will-iot-app-development-impact-our-future-2chk).

### Virtual Reality 

As a new form of entertainment and gaming, virtual reality is gaining popularity. VR allows you to immerse yourself in a virtual environment and interact with it in a realistic and engaging way.

Education, training, and healthcare are just a few other areas where virtual reality is used. In the future, VR technology may be used in even more creative, interesting ways as it advances.

### Low-Code/No-Code platform 

It is easier for people like you and me to become citizen developers with the help of low-code and no-code platforms (LCNC).
 
Due to the fact that users can create apps on these platforms even without any programming experience, they effectively lower the entry barriers for app developers. A drag-and-drop interface on no-code platforms, for example, facilitates enterprise-grade program creation and speeds up development.

Read More: http://bit.ly/3WLQBg7

**Related Article:** [How to Build a Successful On-Demand Delivery App – The Ultimate Guide!](https://dev.to/omdevsinhgohil/how-to-build-a-successful-on-demand-delivery-app-the-ultimate-guide-482g)
Resolved: Unable to Connect to Any of The Specified Mysql Hosts
Tags: mysql
Published: 2022-12-26 11:17:01

There are several possible reasons why you might be seeing the error "**unable to connect to any of the specified MySQL hosts**": 

1. The MySQL server is not running on the host you are trying to connect to. Make sure that the MySQL server is running and that you are connecting to the correct host.

2. The MySQL server is not listening on the port you are trying to connect to. By default, MySQL listens on port 3306, but this can be changed. Make sure that you are using the correct port when trying to connect.

3. There is a firewall or network configuration issue that is preventing the connection. Make sure that there are no firewalls or other network configurations that are blocking the connection.

4. The MySQL user account you are using does not have sufficient privileges to connect to the database from the host you are connecting from. Make sure that the MySQL user has the correct permissions to connect to the database.

5. There is a problem with the MySQL client software you are using. Make sure that you are using the correct version of the MySQL client software and that it is properly configured.

6. There is a problem with the MySQL server itself. Make sure that the MySQL server is properly configured and that there are no issues with the MySQL database.

To troubleshoot this issue further, you can try connecting to the MySQL server from the command line using the mysql command-line client. This will allow you to see any error messages that are returned by the MySQL server and can help you identify the cause of the problem.

[Source](https://lxadm.com/unable-to-connect-to-any-of-the-specified-mysql-hosts/)
What new tech experiences are you looking forward to in the new year?
Tags: discuss
Published: 2022-12-26 10:44:00

---
title: What new tech experiences are you looking forward to in the new year?
published: true
description: 
tags: discuss, 
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4dhbcpr384yfrtg2halz.png
# Use a ratio of 100:42 for best results.
published_at: 2022-12-26 10:44 +0000
---

The new year is a great time to look forward to learning new things, resetting, and finding new experiences. What are you most excite about in 2023? It might be a conference, meetup, community experience, a new job, or learning something new.
Building a Django-Powered Online Food Ordering System
Tags: django, programming, github
Published: 2022-12-26 10:40:28

If you're in the market for a simple and powerful way to build an online food ordering system, look no further than the Food Project, a web application built with Django. The Food Project allows users to order food online from local restaurants, and includes a menu of available dishes as well as a Django admin panel for restaurant owners to manage their menus.

In this article, we'll take a closer look at the features and capabilities of the Food Project, and provide a link to the Github repository so you can explore the code and even contribute to the project.

##**Features of the Food Project**

**Easy menu management:** The Food Project includes a Django admin panel that allows restaurant owners to add, edit, and delete menu items with ease. No need to fuss with HTML or SQL - just use the familiar Django interface to manage your restaurant's menu.

**Responsive frontend:** The Food Project's frontend is built using modern web technologies, ensuring that it looks great and works smoothly on a wide range of devices. Customers can view the menu and place orders from their laptops, tablets, or smartphones with no hassle.


**Order processing and notification:** When customers place orders through the Food Project, the application handles the submission and saves the order data to the database. Restaurant staff can then be notified of new orders via whatsapp.

##**Getting Involved with the Food Project**

If you're interested in contributing to the Food Project or using it as the basis for your own online food ordering system, you can find the source code on Github at the following link: https://github.com/Soufiane-Majdar/Food_Project. The repository includes detailed documentation and instructions for getting started with the project.

##**DEMO :**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2dwwfpgn0rxlkqr1nx4e.png)

**Admin Panel**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mk5416x7ph06iv3salzp.png)
Azure Blogathon - Phase 2
Tags: azure, cloud
Published: 2022-12-26 10:08:18


![Azure Blogathon](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k0hi3n2s5jz2f57a6e2x.jpg)

Attention all developers and tech enthusiasts! 

Azure Blogathon is back, and this year's prizes are bigger and better than ever. Whether you're an experienced blogger or just starting out, Azure Blogathon is the perfect opportunity to showcase your skills, knowledge, and passion for Microsoft Azure and cloud computing. Plus, with amazing prizes like Surface Pro Xs, online vouchers worth INR 2000 & special t-shirts up for grabs, it's time to BLOG IT OUT!

Don't miss out - sign up today and start writing your way to the top! 

Here's the link to register - https://azureblogathon.com/
Design system with Tailwindcss
Tags: webdev, javascript, beginners, css
Published: 2022-12-26 09:53:25

{% embed https://www.youtube.com/watch?v=t_XQRAfBJ8E %}

Design systems are an essential part of modern front-end development, as they provide a consistent and coherent visual language for your application. Creating a design system can help improve the user experience, increase efficiency in development, and ensure that your application maintains a cohesive look and feel.

One tool that can be particularly useful for creating a design system is Tailwind CSS, a utility-first CSS framework. With Tailwind, you can easily build custom designs by composing a series of utility classes, rather than writing custom CSS. This can save a significant amount of time and effort, as you don't need to worry about naming conventions or creating complex class structures.

To get started with Tailwind CSS, you'll first need to install it in your project. This can typically be done using a package manager like npm or yarn. Once installed, you'll need to create a configuration file that specifies the various design tokens (such as colors, font sizes, and spacing values) that you want to use in your design system. From there, you can start building out your design system by composing utility classes in your HTML templates.

Tailwind CSS includes a wide range of utility classes for things like layout, typography, and background colors, which can be combined in various ways to create custom designs. For example, you might use the text-xl class to increase the font size of a heading, and the bg-gray-200 class to give it a light grey background.

One of the key benefits of using Tailwind CSS is that it allows you to create custom designs without adding a lot of bloat to your HTML templates. Because the utility classes are highly specific and modular, you can mix and match them to create exactly the styles you need, without having to create a lot of custom classes. This can make it easier to maintain your design system over time, as you can make changes by simply updating the configuration file and recompiling your CSS.

Overall, Tailwind CSS is a powerful tool for creating design systems in front-end applications. It allows you to easily create custom designs using a modular, utility-first approach, which can save time and effort in development and make it easier to maintain your design system over time.

Guillaume
I'm adding a wiki and an API documentation to talentexploit.com using vitepress
Tags: vitepress, vue, wiki, sideprojects
Published: 2022-12-26 09:34:13

I have had my wiki on my local computer, however that mostly consists of how-to to build the app, create backend, create frontend and connect the two. Now that the app is getting larger, and it is not enough to store the backlog in Jira, since tasks became huge and I need a place where I can store these organised, I decided to build docs. I have seen the perfect and easiest way for this on the vue.js official site, and looking into it, I see they use vitepress, and the files are all markdown. This is a nice and simple way to write long texts. Later I plan to add the jira tasks to this, however there should be a way to group tasks in Jira too, but so far I've found it too difficult, since bulk assignment is very difficult in jira, and often the case is, that you know what tasks should be done, but can't yet see the connection, like adding stuff and editing stuff are mostly similar. Also in many cases you need to take a step back and think the task over, before breaking it down to tasks. For example, in talentexploit, assigning similar jobs to a job on the database side is merely creating a comma separated list of job id's. But if I take a step back, it's more complex, so I'd rather write it down, collect all my thoughts about it, and then start defining the tasks that has to be done. Also I want to note down my API endpoints as well in a nice and clean format.
Vitepress can be downloaded here, and simply can be run on Netlify. https://vitepress.vuejs.org/
Markdown helper: https://markdown-it.github.io/
Understanding Docker: part 37 – Content Trust
Tags: docker, devops, beginners, cloud
Published: 2022-12-26 09:20:12

---
title: Understanding Docker: part 37 – Content Trust
published: true
description: Serie of sketchnotes about Docker. Explaining in a visual way Docker principles.
tags: Docker, DevOps, beginners, Cloud
series: Understanding Docker in sketchnotes
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9146u7vcjk6dq754fk90.jpg
---

Understanding Docker can be difficult or time-consuming. In order to spread knowledge about Cloud technologies I started to create sketchnotes about Docker. I think it could be a good way, more visual, to explain Docker (and other technologies like Kubernetes and Istio).

We continue the series of Docker sketchnotes with a focus about Content Trust on Docker.

![Docker content trust](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9146u7vcjk6dq754fk90.jpg)
![Docker content trust](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tktu6didpjba5fgw4oz2.jpg)
![Docker content trust](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zyz4oj93kk21rij2mpag.jpg)
![Docker content trust](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/haq2o013pnbyv77f7gao.jpg)
![Docker content trust](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/me5fb06b9hvldecbf1ko.jpg)

As usual, if you like theses sketchnotes, you can follow me, and tell me what do you think. I will publish others sketchs shortly :-).

If you are interested, I published the book in a paperbook version on Amazon: [Understanding Docker in a visual way](https://www.amazon.fr/Understanding-Docker-visual-way-sketchnotes/dp/B0BT6ZXR1W/ref=sr_1_1) and also in a PDF version on [GumRoad](https://gumroad.com/aurelievache#YTLzM).

If Kubernetes interest you too, the book [Understanding Kubernetes in a visual way](https://www.amazon.fr/dp/B0BB619188/ref=cm_cr_arp_d_product_top?ie=UTF8) is available also.