teleren/devto huggingface dataset:
OpenAI plant große Investments
Published: 2024-02-09 17:24:37

OpenAI plant große Investments 


wie aus der Tagesschau bekannt wurde - vgl. Link ganz unten...

Der Chef des KI-Unternehmens OpenAI, Sam Altman, wirbt nach einem Medien-Bericht für Billionen-Investments in die Chip-Industrie. 
Vor allem eine Region steht im Fokus des Interesses.Der Boom der Künstlichen Intelligenz lässt OpenAI, Entwickler des Text-Chatbots ChatGPT, offenbar schnell wachsen. Nach einem Bericht der "Financial Times" unter Berufung auf Insider hat das Unternehmen im Dezember die Marke von zwei Milliarden US-Dollar beim Umsatz überschritten. Um künftiges Wachstum zu sichern, soll OpenAI-Chef Sam Altman ein billionenschweres Programm zum Bau weiterer Fabriken für KI-Chips planen.So werbe der Chef des ChatGPT-Entwicklers bei Investoren für ein billionenschweres 
Projekt zum Bau weiterer Fabriken für KI-Chips, schrieb das "Wall Street Journal" unter Berufung auf Insider. Altman wolle hierfür fünf 
bis sieben Billionen Dollar auftreiben und spreche darüber unter anderem mit potenziellen Geldgebern aus den Vereinigten Arabischen Emiraten.

 😳♥♥♥ - its amazing! 🚀


Gespräche in den VAEWie das "Wall Street Journal" weiter berichtet, hat sich Altman mit verschiedenen Akteuren getroffen, insbesondere mit Scheich Tahnoun bin Zayed al Nahyan aus den Vereinigten Arabischen Emiraten. Das habe das "Wall Street Journal" von mit der Angelegenheit vertrauten Personen erfahren. Al Nahyan ist der oberste Sicherheitsbeamte des Landes und Bruder des Präsidenten der Vereinigten Arabischen Emirate.Altman hat sich danach auch mit Masayoshi Son, dem CEO von SoftBank, und mit Vertretern von Chipfabriken wie Taiwan Semiconductor Manufacturing Co. (TSMC) getroffen, um das Projekt zu besprechen. In den Gesprächen mit TSMC soll Altman gesagt haben, dass er in den nächsten Jahren Dutzende von Chipfabriken bauen wolle, so die Personen. Seine Vision sei es, das Geld von Investoren aus dem Nahen Osten zu beschaffen und TSMC mit dem Bau und Betrieb der Anlagen zu beauftragen.

**
weitere Infos und Hintergründe **

https://www.tagesschau.de/wirtschaft/unternehmen/openai-umsatzwachstum-investitionen-100.html
https://www.crunchbase.com/organization/openai/company_financials
https://openai.com/blog/openai-lp
Linux Access Control Lists (ACLs): A Simplified Guide with Examples
Tags: linux, accesslist, permissions, security
Published: 2024-02-09 17:10:54

Access Control Lists (ACLs) are a flexible permission mechanism in Linux that allows you to set granular permissions on a per-user and per-group basis. They are an extension to the standard Unix permissions model and are particularly useful when more than one user or group needs access to a file or directory.

## Understanding ACLs

In Linux, each file and directory has an associated ACL. An ACL consists of entries, each of which defines the permissions for a user or a group. There are three types of ACL entries:

- **User entries**: Define permissions for a specific user.
- **Group entries**: Define permissions for a specific group.
- **Other entries**: Define permissions for users not matched by the user and group entries.

Each entry has a set of permissions associated with it, similar to the standard read (`r`), write (`w`), and execute (`x`) permissions.

## Viewing ACLs

You can view the ACL of a file or directory using the `getfacl` command. For example:

```bash
$ getfacl myfile.txt
# file: myfile.txt
# owner: alice
# group: staff
user::rw-
user:bob:r--
group::r--
mask::r--
other::---
```

In this example, the file `myfile.txt` is owned by `alice` and the `staff` group. `alice` has read and write permissions, `bob` has read-only permissions, and all other users have no permissions.

## Modifying ACLs

You can modify the ACL of a file or directory using the `setfacl` command. For example, to give `bob` read and write permissions to `myfile.txt`, you would use:

```bash
$ setfacl -m u:bob:rw myfile.txt
```

You can also remove an ACL entry using the `-x` option. For example, to remove `bob`'s permissions, you would use:

```bash
$ setfacl -x u:bob myfile.txt
```

## Default ACLs

In addition to access ACLs, directories can also have default ACLs. These are used as a template for the ACL of new files and directories created within the directory.

You can set default ACLs using the `d:` prefix. For example, to set a default ACL giving `bob` read and write permissions, you would use:

```bash
$ setfacl -m d:u:bob:rw mydir
```

In conclusion, Linux ACLs provide a powerful and flexible mechanism for managing file and directory permissions. They allow you to set permissions on a per-user and per-group basis, providing more granular control than the standard Unix permissions model.
Should Write to Upgrade
Tags: nothing
Published: 2024-02-09 17:09:11

---
title: Should Write to Upgrade
published: true
description: 
tags: #nothing
# cover_image: https://direct_url_to_image.jpg
# Use a ratio of 100:42 for best results.
# published_at: 2024-02-09 17:06 +0000
---

My First Blog
it is very important to write blog for developer Because even you understand everthing you have to others to understand your thoughts. I think Writing will help in that
React: UseState()
Published: 2024-02-09 17:07:52

Let's now disucss about the **UseState()**.

UseState() is a Hook which store the intial value and update the value if any change occurs in state.

Real life example:


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f5iff8c0qffk81vbm0kb.gif)
Let's imagine if you go to a restaurant & order noodles. Somehow you changed your mind to try italian. The waiter gave a chance to swap the noodles with pizza.

**UseState()** is like a waiter. It provides a function to change the initial value assigned.

**Usage**

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eafsdpk3g35abtumxzbq.png)
The above figure depicts the usage of **useState()**.

On intial render the useState stores 0 as the value.

When user click a button which triggers a function, Inside this function we can call setCount() to update the initial value.

Meet u soon with more concepts in React🤠
Avoid conflicts between denols and tsserver in Neovim
Tags: neovim, typescript, lsp, deno
Published: 2024-02-09 16:53:11

Recently I've been working on a project in a monorepo were I've got nodejs/typescript and deno projects. This is notoriously annoying because any `ts` file will start both `tsserver` and `denols` language services.

If you've got here you know what I'm talking about :sweat:

I'm setting up my lsp with `lspconfig`.

This is how `denols` is configured
```lua
lspconfig.denols.setup({
  root_dir = lspconfig.util.root_pattern("deno.json", "deno.jsonc"),
  init_options = {
    lint = true,
    unstable = true,
    suggest = {
      imports = {
        hosts = {
          ["https://deno.land"] = true,
          ["https://cdn.nest.land"] = true,
          ["https://crux.land"] = true,
        },
      },
    },
  },

  on_attach = on_attach,
})

```
And this is the hack to avoid `tsserver` to start on a file that belongs to a deno project.

```lua
spconfig.tsserver.setup({
  on_attach = function (client, bufnr)
    on_attach(client, bufnr);
    vim.keymap.set('n', '<leader>ro', function()
      vim.lsp.buf.execute_command({
        command = "_typescript.organizeImports",
        arguments = { vim.fn.expand("%:p") }
      })
    end, { buffer = bufnr,  remap = false });
  end,
  root_dir = function (filename, bufnr)
    local denoRootDir = lspconfig.util.root_pattern("deno.json", "deno.json")(filename);
    if denoRootDir then
      -- print('this seems to be a deno project; returning nil so that tsserver does not attach');
      return nil;
    -- else
      -- print('this seems to be a ts project; return root dir based on package.json')
    end

    return lspconfig.util.root_pattern("package.json")(filename);
  end,
  single_file_support = false,
})
```
This leverage the fact that if `root_dir` function returns `nil` then `lspconfig` wont's start a language service for that file. :tada:
Avoid conflicts between denols and tsserver in Neovim
Tags: neovim, typescript, lsp, deno
Published: 2024-02-09 16:53:10

Recently I've been working on a project in a monorepo were I've got nodejs/typescript and deno projects. This is notoriously annoying because any `ts` file will start both `tsserver` and `denols` language services.

If you've got here you know what I'm talking about :sweat:

I'm setting up my lsp with `lspconfig`.

This is how `denols` is configured
```lua
lspconfig.denols.setup({
  root_dir = lspconfig.util.root_pattern("deno.json", "deno.jsonc"),
  init_options = {
    lint = true,
    unstable = true,
    suggest = {
      imports = {
        hosts = {
          ["https://deno.land"] = true,
          ["https://cdn.nest.land"] = true,
          ["https://crux.land"] = true,
        },
      },
    },
  },

  on_attach = on_attach,
})

```
And this is the hack to avoid `tsserver` to start on a file that belongs to a deno project.

```lua
spconfig.tsserver.setup({
  on_attach = function (client, bufnr)
    on_attach(client, bufnr);
    vim.keymap.set('n', '<leader>ro', function()
      vim.lsp.buf.execute_command({
        command = "_typescript.organizeImports",
        arguments = { vim.fn.expand("%:p") }
      })
    end, { buffer = bufnr,  remap = false });
  end,
  root_dir = function (filename, bufnr)
    local denoRootDir = lspconfig.util.root_pattern("deno.json", "deno.json")(filename);
    if denoRootDir then
      -- print('this seems to be a deno project; returning nil so that tsserver does not attach');
      return nil;
    -- else
      -- print('this seems to be a ts project; return root dir based on package.json')
    end

    return lspconfig.util.root_pattern("package.json")(filename);
  end,
  single_file_support = false,
})
```
This leverage the fact that if `root_dir` function returns `nil` then `lspconfig` wont's start a language service for that file. :tada:
Kubernetes
Tags: k8sfull, kubernetes, k8s, ibbus
Published: 2024-02-09 16:35:33

🔹 Kubernetes is an open-source 𝗰𝗼𝗻𝘁𝗮𝗶𝗻𝗲𝗿 𝗼𝗿𝗰𝗵𝗲𝘀𝘁𝗿𝗮𝘁𝗶𝗼𝗻 system for automating software deployment, scaling, and management.

𝗙𝗲𝗮𝘁𝘂𝗿𝗲𝘀:
✔ Load balancing
✔ Self-healing
✔ High availability / Ensure no downtime / Maintain fault tolerance
✔ Performance enhancement
✔ Auto-scaling
 
🔹 Kubernetes follows Master and Worker architecture. Master is responsible for all the heavy lifting which we will dive into in a moment and assigning tasks to workers or just nodes.

𝗠𝗮𝘀𝘁𝗲𝗿 𝗖𝗼𝗺𝗽𝗼𝗻𝗲𝗻𝘁𝘀:
1️⃣ API Server - Exposes the Kubernetes API.
2️⃣ Controller - Helps in maintaining the desired state of your cluster.
3️⃣ Scheduler - Schedules pods onto nodes.
4️⃣ etcd - Persistent storage which stores all cluster data.

𝗪𝗼𝗿𝗸𝗲𝗿 𝗖𝗼𝗺𝗽𝗼𝗻𝗲𝗻𝘁𝘀:
1️⃣ Kubelet - An agent that runs on each node in the cluster.
2️⃣ Kube Proxy - Takes care of Kubernetes networking.
3️⃣ Container Runtime - Responsible for running containers.

✅ Install Minikube on Mac - https://medium.com/@ibrahims/install-minikube-on-mac-d0fb21f5a09a

✅ ReplicaSet — Kubernetes - https://ibrahims.medium.com/replicaset-kubernetes-5285ddef6b2d

✅ Services — Kubernetes - https://ibrahims.medium.com/services-kubernetes-0674c52a3585

✅ Ingress — Kubernetes - https://ibrahims.medium.com/ingress-kubernetes-f87ed36f78f0

✅ ConfigMap — Kubernetes - https://ibrahims.medium.com/configmap-kubernetes-33b68649688e

✅ ConfigMaps & Secret — Kubernetes - https://ibrahims.medium.com/configmaps-secret-kubernetes-1f3bab7d5030

✅ RBAC — Kubernetes - https://medium.com/@ibrahims/rbac-kubernetes-e709d046db87

✅ Security Context — Kubernetes - https://ibrahims.medium.com/security-context-kubernetes-9672ae2380f9

✅ Health Check — Kubernetes - https://medium.com/@ibrahims/health-check-kubernetes-be0b52a12e76

✅ Monitoring — Kubernetes - https://ibrahims.medium.com/monitoring-kubernetes-cbd89410c0b4

✅ Taints and Tolerations — Kubernetes - https://ibrahims.medium.com/taints-and-tolerations-kubernetes-673307c49447
OAuth Terms Explained in One Sentence
Tags: oauth, authentication, authorization, openid
Published: 2024-02-09 16:31:42

I made this note for a quick reference to my future self. 
OAuth 2 aimed to replace traditional session based auth, because of security and management issues.
OAuth was originally designed to handle only authorization and not authentication. 
## Terminology
### Resource Owner
User who own the data, the one who is trying to log in. You. 
### Client
The app requesting your data. eg. Calendly
### Authorization Server
Server that verifies user's identity. eg. accounts.google.com
### Resource Server
Server that hosts resources needed by client. eg. api.calendar.google.com
### Authorization Grant
Permission from authorization server. aka `auth code`
### Redirect URI 
Where to pass authorization grant. (usually back to client's servers) eg. api.client.com/callback
### Access Token
Token for accessing resources from  `Resource Server`
### Response Type
It can be either token or code. Code is more secure involving back channel. Passing response type=token would give you access token directly without authorization grant (auth code). 
### Scopes
Specific granular permissions. list of scopes that authorization server understands. Client sends list of scopes to request data. eg. Permission to read your age, email, name etc.
### Consent
Consent screen popping up when signing in. eg. Consent screen when logging in with Google
### Back Channel - highly secured channel
Backend server of client, eg. python code running in Calendly's servers
### Front channel - less secured channel 
Browser, eg. Javascript Calendly app running on user's browser

## Flows
Flow, in laymen terms, means "the login/signup flow" -- process of app requesting access, user providing consent, token generated and passed back to client. There are 4 flows supported:
- Authorization code (front channel + back channel)
- Implicit (front channel only)
- Resource owner password credentials (back channel only)
- Client credentials (back channel only)
## Problems with OAuth 2.0 for Authentication
- No standard way to get users information
- Every implementation is a little different
- No common set of scopes
## OpenID Connect
Introduced to solve the authentication problem. It is a small layer on top of OAuth. 
### OpenID scope
the only new thing added. this mean the flow is now OpenID connect flow. 
### ID token
similar to access token, but used to identify user instead of authorizing them within some scopes. it is JWT token.

### Claims
JWT token has 3 sections. header, signature and body. body is also known as claims or payload. claims is decode by the application and can be used to retrive user data.

### /userinfo 
this endpoint is implement by the auth server as a standard. the client can hit it to get basic info like name, email and profile pic.

## Reference
This is an excellent presentation by Nate Barbettini, who clearly explains OAuth2 in simple terms. Highly recommenced watch. 

{% embed https://www.youtube.com/embed/996OiexHze0 %}
Moving and coding - Getting physical as a developer
Tags: productivity
Published: 2024-02-09 16:30:00

It is not a surprise that being a developer is a sedentary job. Physical health is just as important as mental health. I aim to get some physical activity every week and take a break from watching the screen. I managed to develop a routine and have hobbies that keep me active.

## Reasons why exercise is important:
* Physical Health
* Energy and Productivity
* Creativity

## Motivation

The biggest challenge is finding motivation when exercising. Working out often feels like a chore for others, but fear not. A helpful tip is to develop a routine. Start small and progress with each week.Pick a physical activity that you enjoy and take a short break.

## Safety

Before starting physical activity, check with your health provider for existing health conditions. Safety is the number one priority. To prevent injuries, stretch before and after workouts. I had an injury before and it was not fun. Do physical activity at your pace to prevent injuries. It is okay to take a rest if you are not feeling well.
Getting organized

The easiest way to get started is to use a tool to keep track of progress. Fitness apps and calendars are a great tool for organizing workouts and exercise.


How I get exercise
Here are a few creators I follow:

* Heather Robinson - Is one of my favorites when working out. She has a variety of workouts from HIIT to daily workouts. I like her free programs that are generous and can last a week to a month.

* MYLEE Dance - A dance channel that focuses on kpop inspired choreography and dance workouts.

* The Fitness Marshall - Zumba-style workouts that are under 5 minutes.
Let's talk about Coding Assistant!🤖🧑🏼‍💻
Tags: ai, githubcopilot, programming, productivity
Published: 2024-02-09 16:20:09

There are tons of coding assistant in the market and It became quite popular after the GitHub Copilot launch. 

Which coding assistant are you using and why? Are these tools help you in productivity or development workflow management efficiently.

I am currently exploring [Pieces for Developers](https://pieces.app/) It is more than just a Copilot with lots of extra features like OCR, offline coding assistant, multi LLMs supports.
Struggles with css
Tags: webdev, javascript, beginners, programming
Published: 2024-02-09 16:18:57

The following are the issues which every web dev faces
(and don't you dare disagree with that 👿)
1. **The Invisible Button Dilemma**: Your button looks great... until someone tries to click it! You've inadvertently made it invisible, blending seamlessly into the background. Your users are now playing a game of "Where's the Button?" instead of clicking through.

2. **The Floating Mystery**: Ever tried to center something vertically in CSS? It's like trying to find the center of a black hole – you're not entirely sure if it even exists. Your divs float around the page like lost balloons at a windy carnival.

3. **The Z-Index Abyss**: You've stacked your elements using z-index, but somehow, one div is always hiding behind another like a shy turtle. You've entered the Z-Index Abyss, where elements vanish into the depths of your webpage's layers, never to be seen again.

4. **The Responsive Riddle**: Your website looks perfect on your laptop, but on mobile, it's as responsive as a stubborn mule. Your carefully crafted layout collapses like a house of cards, leaving users squinting at microscopic text and tapping wildly at tiny buttons.

5. **The Box Model Mayhem**: You thought you understood the box model, but now your margins are collapsing like a tired office worker on a Monday morning. Your divs are misbehaving, refusing to align properly and causing chaos in the layout.

6. **The Browser Compatibility Catastrophe**: Your CSS works flawlessly in one browser, but in another, it's a hot mess. It's like trying to throw a party where half the guests speak a different language – chaos ensues, and nobody knows what's going on.

7. **The Selector Struggle**: You've crafted the perfect CSS selector, or so you thought. But now, your styles are being overridden by a more specific selector from a library you barely understand. It's like a game of CSS tug-of-war, and you're losing.

Remember, in the world of CSS, laughter might be the best medicine... or at least the only thing keeping you from pulling your hair out!
GUI vs CLI
Tags: linux, beginners, cybersecurity
Published: 2024-02-09 16:15:23

The operating system relies on someone to communicate with the hardware to execute tasks. And that someone is you. By interacting with the operating system, you can assign tasks to the hardware.

The user communicates with the operating system via an interface. A user interface is a program that allows a user to control the functions of the operating system. We will look at two types of user interfaces: the graphical user interface (GUI) and the command-line interface (CLI). Let's cover these interfaces in more detail.


**Graphical User Interface (GUI)**

![GUI](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vcz19151a1o1nx9ozrf5.jpg)


A GUI is a user interface that uses on-screen icons to manage various computer tasks. Most operating systems can be used with a graphical user interface. If you've used a personal computer or a cell phone, you have experienced operating a GUI. Most GUIs include these components: a start menu with program groups, a taskbar for launching programs, and a desktop with icons and shortcuts. All these components help you communicate with the operating system to execute tasks.


**Command Line Interface (CLI)**

![CLI](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/o59tqkwr51j8juiw77v4.png)
In contrast, the command-line interface (CLI) is a text-based user interface that allows you to interact with your computer through commands. These commands communicate with the operating system and execute tasks like opening programs. The command-line interface is a much different structure than the graphical user interface. When you use the CLI, you'll immediately notice a difference. There are no icons or graphics on the screen. The command-line interface looks similar to lines of code using certain text languages. Let me show you another example:


![CLI](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/moj7h5f60rfix8o30vus.png)
Search for SQL Objects and Table Data in SSMS with ease
Tags: sql, sqlserver, dbforge, devart
Published: 2024-02-09 16:15:12

You can easily find SQL objects, data, and text in your databases with Search for SQL Server, an add-in for Microsoft SQL Server Management Studio that is available for free.

Finding a particular table or remembering the names of your stored routines can be a real challenge when dealing with databases that include many objects. Finding a specific column name or text within a stored procedure is now a breeze with Search for SQL Server, eliminating the need to scour the full SSMS Object Explorer. You will undoubtedly find this database search tool to be a lifesaver.

See the tool's details: https://www.devart.com/dbforge/sql/search/