teleren/devto huggingface dataset:
neco time table 2023
Published: 2023-01-27 20:20:30

[https://multischolar.com/neco-timetable/](https://multischolar.com/neco-timetable/#utm_source=backlinks&utm_medium=search&utm_campaign=darry+ring+us&utm_content=Michelle)
https://plaza.rakuten.co.jp/chenlee/diary/202301270001/
https://www.provenexpert.com/neco-time-table-20232/
https://www.producthunt.com/@necotable
https://www.divephotoguide.com/user/necotable/
https://wakelet.com/@necotable
https://vocal.media/authors/necotable
https://www.lifeofpix.com/photographers/necotable/
https://seedandspark.com/user/necotable
https://rosalind.info/users/necotable/
http://phillipsservices.net/UserProfile/tabid/43/userId/196086/Default.aspx
https://app.roll20.net/users/11558952/necotable
https://speakerdeck.com/necotable
https://social.msdn.microsoft.com/Profile/necotable
https://camp-fire.jp/profile/necotable
https://plazapublica.cdmx.gob.mx/profiles/necotable/activity
https://www.metal-archives.com/users/necotable
https://storium.com/user/necotable
https://trabajo.merca20.com/author/necotable/
https://www.intensedebate.com/people/necotable
https://www.mifare.net/support/forum/users/necotable/
https://pinshape.com/users/2562480-necotable
http://foxsheets.com/UserProfile/tabid/57/userId/119113/Default.aspx
https://www.kompasiana.com/necotable
https://www.credly.com/users/neco-time-table-2023/badges
https://www.myminifactory.com/users/necotable
https://www.sqlservercentral.com/forums/user/necotable
https://www.longisland.com/profile/necotable
https://guides.co/a/neco-time-table-20/
https://myanimelist.net/profile/necotable
https://www.iheart.com/podcast/269-necotable-107937562/
osdc-2023-assignment3
Tags: github, git, osdc
Published: 2023-01-27 20:20:02

---
series: osdc
---

In our 3rd lesson of [osdc](https://github.com/OSDC-Code-Maven/osdc-2023-01-public) we learnt how to work locally. Our assignment was to work locally on windows, clone our GitHub website, make some changes and push back to the main repo.
__How?__
I installed git on my windows laptop, and opened git bash.
In the terminal I wrote:
ssh-keygen.exe
in .ssh/ I found a paired-key, public and private.
cat .ssh/id_rsa.pub and place in GitHub - go to my profile setting-> SSH and GPG keys-> new SSH key. give it a title, paste the key and press 'Add SSH key'. 
Now I can go to [my repository] (https://github.com/anatlavitzkovitz/anatlavitzkovitz.github.io) on GitHub, press the green "code" button on the upper right corner, copy the SSH one and do 'git clone copied SSH address' in the terminal.
Doing this on my local git bash, allowed me to clone the repo.

But...It only worked when I defined driver C as my home directory and worked without VPN.

I could now add a file named "test_locally.txt" to the docs folder, and than do:

```
git status
git add test_locally.txt
git commit -m "test working locally"
git push
```

It works!

But than my [pull request](https://github.com/OSDC-Code-Maven/osdc-2023-01-public/pull/65) failed. I don't know why )-:
Spring boot : A security without WebSecurityConfigurerAdapter
Tags: webdev, java, security, spring
Published: 2023-01-27 20:18:28

Web security is an essential aspect of any web application, and it is crucial to keep it up-to-date with the latest best practices. One of the ways to secure a web application built with Spring is by using the **WebSecurityConfigurerAdapter** class. This class has been a powerful tool for developers, as it allows for fine-grained control over the application's security settings. However, starting with Spring Security 5.0, the WebSecurityConfigurerAdapter class has been deprecated in favor of a new approach using the **SecurityFilterChain** bean.

The old way of configuring security using WebSecurityConfigurerAdapter is a quite verbose and can be confusing for some developers. Let's take a look at an example of how it would look like:

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

In this example, we are defining two methods configure(AuthenticationManagerBuilder auth) and configure(HttpSecurity http). The first one is used to configure the authentication manager, and the second one is used to configure the authorization rules.

We can see that the configure(AuthenticationManagerBuilder auth) method is used to set up the UserDetailsService and PasswordEncoder to be used by the authentication manager.

The configure(HttpSecurity http) method is used to define the authorization rules. We can see that we are using antMatchers to match the requested URLs, and then we are using the hasRole method to define the role that is required to access those URLs.

As you can see, the old approach is quite verbose, and it can be difficult to understand for some developers. However, starting with Spring Security 5.0, a new approach has been introduced to configure security. The new approach uses the SecurityFilterChain bean, and it is more concise and easier to understand. Let's take a look at an example:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j7d45j6g866nvkh2f81d.png)
In this example, we are using the **SecurityFilterChain** bean to configure security. The SecurityFilterChain bean is a functional bean that allows for more flexibility in terms of configuring security settings.
So you only need to implement a single method, for whatever your embeded datasource, and make your config as we want.
Display the same category products, but exclude the selected one
Tags: javascript, programming, webdev
Published: 2023-01-27 20:18:09

Building a website like e-commerce, inside it has lots of **behavioral needs** to fulfill & one of those is, to display all <u>same category</u> products but <u>except that user already selected</u> or opened at UI...

then this piece of logic is useful...

```js
const allProducts = [
  { id: 1, category: "mobile", product: 'Sammung S20' },
  { id: 2, category: "cloth", product: 'T-Shirt' },
  { id: 3, category: "mobile", product: 'OnePlus 7T' },
  { id: 4, category: "cloth", product: 'Formal Pant' },
  { id: 5, category: "mobile", product: 'IPhone-14 Max Pro' },
]
```

```js
const selectedProduct = { category: "mobile", id: 5 };
```

```js
const result = allProducts
  .filter(item => item.category === selectedProduct.category)
  .filter(product => product.id !== selectedProduct.id);
```

```js
console.log(result);

/*
  { id: 1, category: "mobile", product: 'Samsung S20' },
  { id: 3, category: "mobile", product: 'OnePlus 7T' },
*/
```
Google Cloud is finally adopting what Linux distros have been doing for years
Tags: cloud, googlecloud, linux, devops
Published: 2023-01-27 19:57:41

{% youtube 6TN0KdHpjv4 %}

Google Cloud's Forrest Brazeal predicts that by 2025 four out of five major developers are going to be using curated open source, but what exactly does that entail? Forrest goes into what the future might hold for engineers and software developers and how curated open source will be a large part of the process. This conversation took place at the 2022 DevOps Enterprise Summit, listen to the full interview with Dev Interrupted cohost Conor Bronsdon here ► https://www.youtube.com/watch?v=4IVeDtVnjg4

---

### [On Feb. 15th, learn how the smartest engineers increased productivity by up to 30% without working longer hours or burning out their teams](https://linearb.io/event/202302-scaling-dev-efficiency/?utm_source=Substack%2FMedium%2FDev.to&utm_medium=referral&utm_campaign=202302%20-%20Event%20-%20GTM%20-%20Referral%20-%20Distro%20-%20Podcast%20Blog)

Every engineering team could use some easy wins right now, including yours. We’re talking quick ways to improve productivity without wasting more hours at work, spending a lot of money or burning out already-stretched teams.

That’s why LinearB teamed up with dozens of engineering orgs to crowdsource the real ways smart companies have improved their productivity - quickly and most importantly, easily.

On February 15th, LinearB will be presenting this playbook at [our free, virtual Scaling Developer Efficiency workshop.](https://linearb.io/event/202302-scaling-dev-efficiency/?utm_source=Substack%2FMedium%2FDev.to&utm_medium=referral&utm_campaign=202302%20-%20Event%20-%20GTM%20-%20Referral%20-%20Distro%20-%20Podcast%20Blog)

Designed to help you gain up to 30% increased productivity, this free online workshop will empower your team with strategies and solutions that let them focus on what they do best: Code.

### [Reserve Your Virtual Seat](https://linearb.io/event/202302-scaling-dev-efficiency/?utm_source=Substack%2FMedium%2FDev.to&utm_medium=referral&utm_campaign=202302%20-%20Event%20-%20GTM%20-%20Referral%20-%20Distro%20-%20Podcast%20Blog)

![Reserve a seat today](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cpvy5uftb01p2nwia2zl.png)
No-code tools for SQL development
Tags: devjournal, database, sql, nocode
Published: 2023-01-27 19:53:29

There are several tools that can make development with SQL easier without the need to write code:

SQL Management Studio: This is a graphical user interface (GUI) tool that allows developers to interact with databases, create and modify tables, run queries and manage data.

SQL Workbench: This is a free, open-source SQL client that provides a GUI for working with databases. It is available for Windows, Linux, and Mac.

DBVisualizer: This is a database management tool that allows developers to work with multiple databases simultaneously and includes features such as a SQL editor, data browsing, and visual data modeling.

Toad: This is a commercial tool that provides a GUI for working with databases, including a SQL editor, data browsing, and visual data modeling.

Navicat: This is a commercial SQL client that provides a GUI for working with databases, including a SQL editor, data browsing, and visual data modeling.

DataGrip: This is a commercial SQL client that provides a GUI for working with databases, including a SQL editor, data browsing, and visual data modeling.

All these tools are designed to provide an easy and intuitive way to work with SQL, allowing developers to quickly and efficiently manage databases, run queries and analyze data without the need to write code.
Python 101
Tags: python, programming, beginners, career
Published: 2023-01-27 19:48:13

Hey guys, I was doing a bit of pondering and came to a conclusion that I'd grind myself in python, and in order to that I need your help, so if you'd kindly leave a tip or clue on something you think I should know or wish you knew on your journey please feel free to drop it on your way. thank you and Hala Tech!!!
First contributions
Tags: opensource
Published: 2023-01-27 19:36:30

## Overview
This is the first week when I finally contributed something to the project and wasn't just digging into some technology. On top of that, I also did some code reviewing (which I guess is also a contribution) and tried to get more familiar with some other technologies that we are going to use.

## The week 3 contributions 
### UI design
The first thing that I did this week for the project and one that took the most effort was creating some initial design for the application. I am not a UI/UX designer myself, but I worked a lot with these guys and I am kinda familiar with their tooling. The way to go for me was Figma since Charka UI (the UI component library that we were going to use) has the [Figma template](https://www.figma.com/community/file/971408767069651759) and I used it before. On top of that, Figma has incredible functionality in terms of collaboration and since this is an open-source project, I found this characteristic very important. 

I am not the super creative guy, so I ended up with a design that looks kind of plain, but it's way better than having nothing. At least, Since I am a front-end developer myself I know that this design is gonna be easy to implement in code. 
Link for the design: https://www.figma.com/file/XAcnMIC1y4qumWinSalHI9/Starchart-UI?node-id=2105%3A2109&t=w4LYaSLX7CLNLfT8-1

### Code reviews
We didn't have a lot of pull requests this week, so not many of them to review. It was one, [where TD initialized remix project with the Remix Blues Stack template](https://github.com/Seneca-CDOT/starchart/pull/38). The [second PR](https://github.com/Seneca-CDOT/starchart/pull/39) I checked was David's, where he removed `express-prometheus-middleware` since we are not going to use Prometheus and he also did some minor package.json related changes.
TypeScript: Using any in Generic Constraints
Tags: typescript, webdev
Published: 2023-01-27 19:35:09

---
title: TypeScript: Using any in Generic Constraints
published: true
description: Why enums are usually considered a bad idea in TypeScript.
tags: TypeScript, WebDevelopment
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nr8r0k0x7lj407xbnzb3.jpg
# Use a ratio of 100:42 for best results.
# published_at: 2022-12-28 14:47 +0000
---

## Why any is bad
They `any` type in TypeScript is usually considered unsafe 99.99% of the time. This is why `any` is so dangerous:
```ts
const str: any = 'I am a string'
const num: number = str
num // 'I am a string'
```
Even though we're telling TS that `num` must be of type `number`, because the type of `str` is `any` it can easily be assigned to `num` even if the value is not a `number`.

Like I said, 99.99% of the time, `any` is bad. But there is one case in TypeScript where it's completely type safe to use `any`!

## Generic constraints
When we are working with generics in TS we can constrain the generic using the `extends` keyword.

For example I might have a `PetOwner` type that has a list of pets, but I want it to be generic so that I can make the array contain only cats, or only dogs.

```ts
type PetOwner<T extends Array> = {
  pets: T
}
```
This type will currently cause a type error because the `Array` type requires a type argument. So lets give it one:
```ts
type PetOwner<T extends Array<any> = {
  pets: T
}
```
Now at first you may think that this is dangerous. We're using `any`! But lets look at what actually happens when we use this type:
```ts
const dogLover: PetOwner<Dog[]>
```
What is the type of `dogLover` here? If you gessed `{pets: Array<Dog>}` you're correct!

This is because when `any` is used in a generic constraint, TypeScript discards it and replaces it with whatever the type argument was, assuming that it matches the constraint. `Dog[]` matches the constraint of `Array<any>` so `T` gets the type `Dog[]`.

> ⚠ `any` is still dangerous if you use it as a type argument. If I instead used `PetOwner<any[]>` it would have all the same pitfalls as using `any` in any other context outside of a generic constraint.

## A note on unknown
`unknown` behaves exactly the same way as `any` in this context, so it may be preferable to use `unknown` but it’s totally up to preference.

For myself, I think `any` reads better. It describes the intent of  the type code more clearly. T must be an array, but it can be an array of anything. Using `unknown` doesn't convey that message as well in my opinion.
How to learn Responsive Web Design
Tags: html, css, tutorial, webdev
Published: 2023-01-27 19:16:17

I very recently came to realise that there are many people who dont understand the importance of responsive web design. Not every developer understands RWD to its full extent. 
In this post i have listed topics to cover and resources to get info allowing you to develop a better understanding on RWD. 

I recently read this [EBook](https://a.co/d/i7sqHNX) and found it to be a great place to start. It goes over both basic and complex concepts and modules. 
I would suggest that you read this book to lay down some foundation as it also has projects within it. 
Once you have a basuc understanding of the topic you can go to github and analyse others code. See how units are being used and how the website it put together. Watch videos on youtube and read threads in communities. Learning from those arounf you is great however the best way to learn is by doing. I would suggest that you take a basic web page and try to make that completely responsive. Whenever you get stuck, ask questions on online forums and try to figure out a solution.
The basics of asynchronous JavaScript
Tags: javascript, async, promise
Published: 2023-01-27 19:04:20

Asynchronous JavaScript refers to the ability of JavaScript to execute code in a non-blocking way, allowing other code to run in the meantime. This is in contrast to synchronous JavaScript, which runs code in a blocking manner, where each line of code must be executed before moving on to the next.

There are several ways to implement asynchronous JavaScript, including callbacks, Promises, and async/await.

Callbacks:
A callback is a function that is passed as an argument to another function, which is then called at a later time. Here's an example of using a callback to log the result of a function:

```
function add(a, b, callback) {
    setTimeout(() => {
        callback(a + b);
    }, 1000);
}

add(1, 2, (result) => {
    console.log(result); // 3
})
```

In this example, the add() function takes in two numbers, a and b, and a callback function. The setTimeout() function is used to simulate a delay, and after one second, the callback function is called with the result of a + b.

**Promises:**
Promises are a more modern way to handle asynchronous code in JavaScript. A promise represents a value that may not be available yet, but will be at some point in the future. Here's an example of using a promise to log the result of a function:

```
function add(a, b) {
    return new Promise((resolve, reject) => {
        setTimeout(() => {
            resolve(a + b);
        }, 1000);
    });
}

add(1, 2)
    .then((result) => {
        console.log(result); // 3
    })
```

In this example, the add() function returns a new promise that takes in two functions: resolve and reject. The setTimeout() function is used to simulate a delay, and after one second, the resolve() function is called with the result of a + b.

**Async/await:**
Async/await is a way to write asynchronous code that looks like synchronous code. It is built on top of promises and allows you to write asynchronous code using a more familiar syntax. Here's an example of using async/await to log the result of a function:

```
async function add(a, b) {
    return new Promise((resolve, reject) => {
        setTimeout(() => {
            resolve(a + b);
        }, 1000);
    });
}

(async () => {
    const result = await add(1, 2);
    console.log(result); // 3
})()
```

In this example, the add() function is declared as async and returns a promise. The await keyword is used to wait for the promise to resolve and get the result of the promise.

These are some of the basic examples of how to use callbacks, Promises, and async/await in JavaScript. Each has its own advantages and use cases, and it's important to understand the difference and choose the right one for your project.

Follow me on Linkedin: https://www.linkedin.com/in/hastings-kondwani-9b5a92200/
February Code Challenge: 28 Websites in 28 Days
Tags: webdev, challenge, astro, tailwindcss
Published: 2023-01-27 19:01:55

(Scroll below for updates!)

Hey everyone!

Recently I've decided to give myself a Code Challenge every month (for the remainder of 2023) to stretch my skills and have a bit of fun. This February, I'll be making 28 websites for my first challenge! 🤯

I'm a little apprehensive (okay, actually more than a little) since I don't usually code seven days a week, which means I may have to double up on some days to fully complete this challenge.

Here are a few ideas I have of simple websites I could make for this challenge:

- websites for people
- revamping UI for "ugly" websites
- landing pages selling nonexistent products
- fanpages?
- ...

(Due to time constraints, these websites will be relatively simple, with perhaps only 1-3 pages.)

I'll be updating my progress on this post periodically as I work through the challenge. Wish me luck!

Cheers,

Catherine

---

## Updates

**Day 4: [Favorite Quotes](https://quotes.cathzchen.com) Website**

_Tools: Astro, TailwindCSS, Pocketbase_

For Day 4 of this challenge, I built a quick website of my favorite quotes (with a theme inspired by Tumblr).  I self-hosted Pocketbase for my backend and deployed my frontend with Vercel.

---

**Day 3: [Spy School](https://spyschool.vercel.app) Website**

_Tools:  Astro, TailwindCSS_

I've always wanted to become a secret agent, so I created a simple landing page for an imaginary spy school.  =)

This is one project I'd love to continue in the future though, especially since I see so much potential for teaching important lessons through this kind of theme.

---

**Day 2: [Embassy University](https://embassyuniversity.vercel.app) (UI Revamps)**

_Tools: Astro, TailwindCSS_

Today I finally got to revamp an old website I’ve been eyeing for sometime: Embassy University! I know I could’ve done a better job with the UI, but at least it looks better than the original. 😅

(Disclaimer: I am not in any way affiliated with this site, nor does me making a different version of their homepage indicate my endorsement of their beliefs and values. 🙃)

---

**Day 1: [The Adventures of Tom Sawyer](https://pdbooks.createfulpurpose.com/tom-sawyer) (PD Books)**

_Tools: Astro, ReactJS, Pocketbase, TailwindCSS_

This first site is a website with custom annotations to bring public domain books to life! I was only able to get the preface of The Adventures of Tom Sawyer complete, but you can bet I’ll return to this project later to add more chapters.

Deciding how I wanted to display annotations was the most difficult part, but after I completed that, I finished the project quickly.
CSS tutorial series: Grid Layout
Tags: beginners, webdev, css, programming
Published: 2023-01-27 18:56:04

In the previous post [CSS tutorial series: Grid Layout (Grid intro)](https://dev.to/fullstackjo/css-tutorial-series-grid-layout-grid-intro-3ebl), we've seen how to define a `grid` and how to specify `columns` and `rows`.

The Grid layout and Flexbox share some properties such as `justify-content` and `align-content`.

## Justify content

|Property| Value|
|--------|:----:|
|`justify-content`|`space-evenly`, `space-around`, `space-between`, `center`, `start`, `end`|

This property aligns the grid items along the X-axis of the `grid-container`.

## Align content 

|Property| Value|
|--------|:----:|
|`align-content`|`space-evenly`, `space-around`, `space-between`, `center`, `start`, `end`|

This property aligns the grid items vertically in the `grid-container`.

## Grid area
You've encountered in the previous tutorial the `grid-row-start`, `grid-row-end`, grid-column-start`and `grid-column-end` properties.

These properties make up the `grid-area` shorthand. This property can name grid items which could be referenced later by another property `grid-template-areas` which is a property of the `grid container`.

## Order of items
In CSS Grid, the `grid items` are presented in the same order they are in the document object model (see example below).
You can change the `grid item`s position using the `order` property.

Just like in `flexbox`, the items that have lower `order` values are placed at the beginning of the grid and the items that have higher values are placed after. 

{% codepen https://codepen.io/fullstackjo/pen/zYLaRaZ %}
Dots Platform will process millions of orders without servers and cloud hosting.
Tags: webdev, aws, laravel, saas
Published: 2023-01-27 18:49:36


![Millions of orders without servers](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/y3pketzjtngh4maqbayc.jpeg)

We started to develop tech for the restaurant and retail industry more than nine years ago. First - for our businesses, then - as a SaaS for hyperlocal commerce, Dots Platform. Year by year, we are iteratively improving our product using cutting-edge technologies. 

And today, we brought the Platform to one more new level. Happy to share that we've transferred all our server infrastructure to a serverless one. We no longer use servers, leveraging an inventive tech stack + Amazon Web Services (AWS) Lambda. 

Please feel free to follow our co-founder and CTO, Yehor Herasymchuk. He regularly posts many exciting things about tech and can share our experience building a serverless infrastructure.