teleren/devto huggingface dataset:
Nim -- a modern "glue" language like Python
Tags: nim, python
Published: 2021-10-12 05:47:45

Nim is a statically typed compiled systems programming language. It supports various backends: it compiles to C, C++ or JavaScript so that Nim can be used for all backend and frontend needs. Via `importc`, `importcpp`, `importjs` pragmas, Nim can import C/C++/JS/ObjC methods or symbols in general. You can refer to the [manual](https://nim-lang.github.io/Nim/manual.html#implementation-specific-pragmas-importcpp-pragma) of Nim.

[c2nim](https://github.com/nim-lang/c2nim) is a tool to translate ANSI C code to Nim. The output is human-readable Nim code that is meant to be tweaked by hand after the translation process. If you are tired of wrapping C library, you can try [futhark](
https://github.com/PMunch/futhark) which supports "simply import C header files directly into Nim". Similar to futhark, [cinterop](https://github.com/n0bra1n3r/cinterop) allows one to interop with C/C++ code without having to create wrappers. [nimLUA](https://github.com/jangko/nimLUA) is a glue code generator to bind Nim and Lua together using Nim's powerful macro. [nimpy](https://github.com/yglukhov/nimpy) and [nimporter](https://github.com/Pebaz/nimporter) is a bridge between Nim and Python. [rnim](https://github.com/SciNim/rnim) is a bridge between R and Nim. [nimjl](https://github.com/Clonkk/nimjl) is a bridge between Nim and Julia! Last but not least, [genny](https://github.com/treeform/genny) generates a shared library and bindings for many languages such as Python, Node.js, C.
My 10 favorite Tech Twitter tweets from the past week
Tags: programming, codenewbie, beginners, webdev
Published: 2021-10-12 05:29:15

_If you found value in this thread you will most likely enjoy my tweets too so make sure you follow me on [Twitter](https://twitter.com/VladPasca5)  for more information about web development and how to improve as a developer. This article was first published on my [Blog](https://vladpasca.hashnode.dev/)_

Start with HTML

By Insharamin 

{% twitter 1445974161550159873 %}

We all are just developers, no matter what tools we use

@VittoStack 

{% twitter 1446052886912372739 %}

Test your code

By DThompsonDev 

{% twitter 1445340770370834433 %}

It all starts from that simple website

By WellPaidGeek 

{% twitter 1445184239402692608 %}

Anyone can learn programming

By SimonHoiberg 

{% twitter 1446118792099086337 %}

Communication is the most important skill a dev can have

By nachoiacovino 

{% twitter 1446105376005361667 %}

Tech Twitter will change a lot in 2022

By @MakadiaHarsh 

{% twitter 1445442105250234369 %}

Save time from finding the perfect font

By @_georgemoller 

{% twitter 1444997427468120065 %}

Focus on the things that matter

By @study_web_dev 

{% twitter 1445668166525353985 %}

Not really from the past week, but Danny is doing a two-day free tech conference so make sure you don't miss this one

{% twitter 1444287088275361796 %}

_I hope found this useful and if you did please let me know. If you have any questions feel free to DM me on  [Twitter](https://twitter.com/VladPasca5)._let me know. If you have any questions feel free to DM me on  [Twitter](https://twitter.com/VladPasca5)._
Team Work!
Tags: webdev, programming, productivity
Published: 2021-10-12 05:24:27

<h3>Make It Happen Together.</h3>

Over this past weekend, I spent some time with fellow developers from our mentorship program at **[Perpetual Education](perpetual.education)**. Together we talked about projects we were working on and helped each other by checking for code errors and potential areas of improvement. What I enjoyed the most about this was the open-mindedness that everyone on the team had. We shared laughs along the way as we worked to improve our projects.

This is one critical aspect that is reinforced throughout the **Perpetual Education** curriculum. In addition to having lots of opportunities to talk with our mentor, Derek, we also have opportunities to work with *each other*. Team work is further practiced through our daily **stand-up**, which is used by developers to share what they’ve been working on, what they’re assigned and if there are any problems or concerns encountered. 

![404 - Not Found.](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/l7s4kk1tm4hinlr301vj.png)
</br>
<h3>Learn From Each Other.</h3>

Let’s face it: no one achieves great things completely on their own. On our life’s journey, we encounter people who help us along the way. As developers, it’s vital that we take the time not only to learn on our own, but also to **learn from each other**. I am enamored with the amount of things that I am learning in my mentorship from everyone involved. Every day I am challenged to think about web development with a fresh perspective. No matter how far along we are, there is always something new to learn.

Regards,

Andrew
Additional Config Feature for My SSG Program
Tags: beginners, opensource, github, programming
Published: 2021-10-12 05:21:59

Write a blog post about the process of working on this new feature using remotes. First, how did the code itself go? Did you run into any problems? How did you tackle the work? Second, how did it go using git? Did you find any of it difficult? How did you get around this? What would you do differently next time? What did you learn from the experience?

This week, the support for the new feature to my simple SSG(Static Site Generator) program is the main goal, which is to add `-c` or `--config` flags to accept a file path to a JSON config file.

I was helping a same project that is written in C#. I took
JavaScript Object Property Descriptors
Tags: javascript, webdev, beginners, programming
Published: 2021-10-12 05:15:10

JavaScript Object Property Descriptors

Any object in JavaScript has a set of properties, and each of these properties has a descriptor.

so let's know why you need this ?

- it's rare using but it uses for advance apps so they can keep the property privacy and not change it 
or deleted (configurable) OR escape it from for loops (enumerable), 
By default these values added using are immutable and not enumerable.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ysb2u306ofeq753ptti9.jpeg)

so you can change this way by using 
Object.defineProperty(obj, 'key', descriptor) 

Note :to define it and descriptor object should add all 4 values and define them if you don't it  will assign other to false.
Using Tech For Good
Tags: programming, devrel, techtalks, productivity
Published: 2021-10-12 05:12:10

Hello everyone! I'm a software engineer and huge advocate of using individual skills and time to make a difference in the world no matter how small. while the pandemic is on, I got to listen to some great stories from my colleagues who had used their Developer skills to create something useful. I decided to collect more such stories from people world wide and bring them forward to inspire others to do the same.
if you are interested do check out [DevNet Create](https://developer.cisco.com/devnetcreate/2021/agenda/?utm_source=devblog&utm_medium=shwetapalande&utm_campaign=create21&utm_term=fy22-q1-0000&utm_content=techforgoodcreate01-ww) agenda and tune in on that day to listen
more details can be found in [this Blog](https://blogs.cisco.com/developer/techforgoodcreate01)
Thank you ❤️
Divtober Day 12: Squeak
Tags: codepen, divtober, css, showdev
Published: 2021-10-12 05:01:55

---
title: Divtober Day 12: Squeak
description: Cartoon of a mouse
published: true
tags: codepen,divtober,css,showdev
series: divtober
---

Today's word is "squeak," and what does squeak? A mouse. So here's a simple mouse:

{% codepen https://codepen.io/alvaromontoro/pen/bGrNLBP %}
PyTest vs Robot – Which automation testing framework to choose?
Tags: softwaretestingcompany
Published: 2021-10-12 05:01:17

Are you confused about which framework to start within python?

Let’s understand what these frameworks are and how to choose between them with their usage.

Robot Framework

Robot Framework is an open-source, keyword-driven test automation framework for Acceptance Testing and Acceptance Test-Driven Development (ATDD). A keyword-driven test approach means capabilities implemented in python can be extended by its test libraries.

Acceptance Testing with Robot Framework:

The test cases in Robot Framework are user-oriented and are not too technical. That is, it has an easy-to-use syntax for test data that allows you to automate tests using keywords.

Acceptance Test-Driven Development:

Acceptance test-driven development (ATDD) is an important agile practice merging requirement gathering with acceptance testing. It is simple enough so that also non­-programmers can create and understand test cases. 

Why Robot Framework?

This framework is mostly used as a less technical skill is required as compared to programming-language based frameworks Therefore, Can be used by team members that have less experience in programming.

For example, Product owners could express acceptance tests using the framework, without having to know the details of how the product is implemented.

Also, a well experienced technical person can also write keywords in their language of choice to test small functions as for unit testing and integration testing.

Some brief useful points for Robot Framework:

Because of its keyword-driven approach, Robot Framework can be used to test the following application:
a. Desktop applications
b. Web applications
c. Mobile applications, and SOAP-based services.
It is possible to write tests that work cross-platform (ie: the same test case can be used to test both an android and iOS application, or for testing a web application that can be executed on Google Chrome, Mozilla Firefox, and Safari).
One of the great strengths of the robot framework is that it is highly extensible.
For example:
a. You can plug in a library in Pytest to use selenium to run a browser.
b. You can plug in a database library to directly access databases.
談 POS 設計，控桌篇
Tags: pos
Published: 2021-10-12 04:59:48

本文是〈談 POS 設計〉的第三篇，在這之前我們分享過〈[談 POS 設計背後的原則](https://editor.leonh.space/2020/the-principle-of-designing-pos/)〉，以及〈[UX 案例分享－JFK AirTrain 的告示螢幕再設計](https://editor.leonh.space/2020/jfk-airtrain-s-signage-redesigning/)〉，裡面分別談到我們對 POS 的基本設計原則以及 [JFK AirTrain](https://zh.wikipedia.org/wiki/%E7%94%98%E8%BF%BA%E8%BF%AA%E5%9C%8B%E9%9A%9B%E6%A9%9F%E5%A0%B4%E6%8D%B7%E9%81%8B) 的告示螢幕改造案例帶給我們關於螢幕資訊量的最佳化設計思考，這篇文章是融合前面兩篇文章後我們自己對於控桌界面的設計實踐。

以桌位的有無劃分經營模式，大概可以分為**無內用**、**內用劃位**、**內用自由座**三種，其中的「內用自由座」指的是像麥當勞那樣，雖然有座位，但是是由顧客自行入座以及自行取餐，這種模式雖然也是內用，但並不是本文討論的對象，這裡我們只針對內用劃位模式的餐廳討論他們的控桌情境，以及 POS 的控桌模組應該要怎麼協助門市人員有效率的控桌，但不僅如此，因為實務上經營模式並不會如此單一，內用劃位型的餐廳通常也兼有**外帶**、**外送**、**賣商品**等業務，在這樣的情境下，控桌也不僅是控桌，也要把這些其他的營業模式納入設計上的考量。

## 桌位安排

從最基本的需求桌位安排開始，我們以**桌**做為基本單位，往下有**座位**；往上有**區**，再往上有**樓層**，這樣四階式的架構。

先以最基本的**桌**開始，桌本身要呈現足夠的資訊，又不能讓畫面顯得繁雜，兩者之間的平衡對設計者來說是個挑戰，我們嘗試如下的 table block prototype：

![Table block](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uosawomoipzwefykhbkl.png)

在 table block 上面可以看到許多資訊，但有些資訊是我們捨棄掉的，例如桌子外型與座位數，在這裡不論是圓桌、方桌，我們都統一以上圖的長方形表示，即便如此，這個 table block 未來應該還會進一步精簡，看起來還是塞太多資訊了…。

Table block 和它裡面的元素應該會有各種狀態，以上面的基礎狀態擴展出幾種不同狀態下的變體：

![Table block states](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5wz53rcishaovus7i9lp.png)

前面提過，內用餐廳通常也兼營外帶、外送等業務，為了能讓他們在同一個畫面管控所有型態的業務，在這裡我們也把外帶、外送等以桌位的概念表示，當然這些桌位通常會被集中安排在佈局頁的某個角落，才不會和實際的桌位搞混，table block 內的「模式」就是表示某張桌位的業務模式，選擇不同的模式意味著後續的流程、品項、金額、支付方式可能會有所差異，例如外帶要顯示的不是桌號而是排隊序號、外送流程需要填入外送地址、平台外送不用開發票等，這些都由該桌的模式來決定後續的流程。

把上面的 table block 依照現場實際的布局，逐一排入既有的網格系統內，以及加入樓層與分區的選擇後，prototype 會長這樣：

![Table layout](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wjnus152kdki89cu8cfk.png)

上面的 layout prototype 滿足了桌位的資訊呈現以及現場布局的方位，但還缺乏一些跨桌位或跨訂單的操作，也就是一桌多單（併單）、多桌一單（併桌）、訂單合併等。Table block 示意圖右上角的 Ⓐ 表示這張桌是有多單，目前在 Ⓐ 單的狀態，但 layout 還要再加上併桌與併單的按鈕與 UX flow，這部分後面會談到。

## 桌位操作

點擊桌位 A01 之後，隨之跳出的是該張桌的詳細訂單內容，prototype 如下：

![Layout + activated table](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9pvudky2v696qhsqbszd.png)

從上往下說明：

- 桌號以下顯示的是 A02 這桌即將來到的預約時間，在 table block 只顯示「預」，A02 展開後就可以看到預約時間是 16:30。

- A02 是有一桌多單的範例，在上面可以做 A/B 單的切換，按＋號可以再多出一個 C 單。後面的狀態標籤可以切換整單的所有狀態。

- 再往下是訂單明細區，顯示品項、數量、單價、狀態等資訊，狀態標籤也可以對單品項的狀態做切換，下方的總計右方有結帳鈕，為此桌位側邊欄的 primary action button。

- 最下方是功能鈕區，預留了十二格的空間。前面提到過的一桌多單、一單多桌就是在這裡操作。

在 table block 的「點餐」、「結帳」和展開桌位側欄後的「點餐」、「結帳」是一樣的，內外兼具，動靜皆宜。

![Table detail](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/siyuy2lfxeifws79fsd1.png)

側欄的用意在於對桌位與訂單做後續的操作，在這裡把**結帳**視為主按鈕，讓操作人員能在更短的時間找到下一步的目標。

在功能鍵區的每個按鈕可能會再展開後續的流程，這部分細節的操作就日後再提了。

## 結語

這篇文章分享了 table block、layout、table detail 三個 prototype，這些 prototype 具象的表達我們對於餐飲最需要的控場工作的設計思考，包括在 table block 內哪些資訊對控場來說是必要的，而哪些較次要的資訊可以被放在 table detail 內，以及在 table detail 內把各項資訊做有系統的歸納，最下面的按鈕區也有更多細節的 UX flow，不過那些部分就待後續展開了！之後我們也會分享更多深入的操作的 UX flow，包括點餐與結帳，從控場、點餐、結帳三大模組出發，逐步地把我們對餐飲產業的 POS 的設計重新思考。
Perform Sorting in Blazor Gantt Chart
Tags: blazor, webdev, csharp, dotnet
Published: 2021-10-12 04:46:58

Learn how to perform sort operations in the Syncfusion [Blazor Gantt Chart](https://www.syncfusion.com/blazor-components/blazor-gantt-chart) component. This video explains how to enable sorting, sort columns at initial load, sort columns dynamically at runtime, sort custom columns, and clear all the sorted columns in the Gantt Chart. It also explains the available sort events.

Product overview: https://www.syncfusion.com/blazor-components/blazor-gantt-chart

Example project: https://bit.ly/3oLnI6i 

Explore tutorial videos: https://bit.ly/3fAz0Ch

{% youtube STXw6v4qODo %}
Phase 1 complete! My Thoughts So Far.
Tags: javascript, beginners, css, codenewbie
Published: 2021-10-12 04:39:14

#Hi everybody!

With the first phase of my Software Engineering bootcamp coming to a close at Flatiron School, I thought I would update you on what I did over the last two weeks.

First, I completed my first code challenge on the first try! This was a huge accomplishment and it felt like a giant weight was lifted off of my shoulders once it was completed. 

The week after that was project week. I was paired up with a couple of my favorite peers, and we developed a one page app that drew from a public API of cocktail recipes. We added a search function so the user can search recipes by name or ingredient, as well as a favorites list that successfully updates the server. 
[Check out the github repository here.](https://github.com/themanselmo/drink-generator)

The last couple of weeks weren't without their struggles, though. 

Imposter syndrome hit *hard*. Being paired with perhaps the two most experienced students in my cohort definitely made me feel a bit unprepared in comparison to them. I felt lost at times, and at others completely overwhelmed. 

However, I also learned that while perhaps I'm not as strong as them in coding javascript off the fly, I am strong in other fields, such as design and styling! I styled our whole project (although there wasn't much to it) as well as helping to style another team's project as well! It was a lot of fun, and I quickly realized was perhaps my favorite part of the project. In the future I would like to build a project that has a bit more UI elements involved, so I can really toy around.

I start phase 2 tomorrow morning. We will be focusing on learning React, and I couldn't be more excited to learn a more clear and concise way of writing Javascript.

And here is a new picture of Mousseboy. Talk to you all soon :)![IMG_2045](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ju1nyy95kjt2j390md6n.JPG)
夢の田舎暮らしが、トラブル続きとならないために。
Published: 2021-10-12 04:37:16

## 理想の田舎暮らし→実は、トラブルも少なくない、という現実
田舎暮らしを実際に始めた方々の体験談に目を通していると、
* 思い切って田舎暮らしの世界へお飛び込んだのはいいのだけれども、思わぬ落とし穴があった、
* 実際に田舎暮らしを始めてみたら、事前に考えていた内容と違った、
* 現実の田舎暮らしは、[ブログ等で見てきた内容](http://kazu5.99ing.net/gyousya/creal)とは、全然異なるものだった、

といったトラブルの報告が、決して少なくありません。
「田舎暮らしで人生が変わった」
「本当に田舎暮らしを始めてよかった」
というような、ポジティブな感想をお持ちの方が多い一方で、
「こんなはずじゃなかった」
「後悔している」
等と思われている方や、最悪の場合は、結局永住にいたらず、途中で土地を離れる羽目になる方も、少なくないのです。

そこで今回は、田舎暮らしにおいて発生しがちなトラブルを、いくつかご紹介していきたいと思います。

## 田舎暮らしで最もよくあるトラブル→住宅関係

一つ目は住宅に関するトラブルです。

特に多いのが、家賃が安い、購入費が安い、と飛びついた物件は、欠陥住宅ではありませんが、かなりの劣化で、修理に膨大な費用がかかった、住みづらすぎて我慢できないというようなことが起こっています。

もちろん、田舎に移住する方のなかには、そういった中古物件や古民家のような住宅に魅力を感じて借りたい、購入したりする人もいるので、最初から分かっていたことではあるのですが、それでも、あまりにも不便だとか、聞いていた以上に老朽化しており、とても住めないというようなことは多少なりとはあるようです。

購入した方の場合、特に多いのが後でかかる改修費が多いことです。

これなら新築を購入したほうが良かったのでは？と思うほど修理に費用がいることもあるようです。

またそういった住宅は例えば下水道が通っていなかったりなど、後で引き込み工事が発生することなど、後々費用がかかってくることもあります。

ともかく、中古物件は比較的後でわかることが出やすいのです。

話に聞いていたことや予想していたこと以上にいろいろ面倒が発生しやすいです。

もちろんすべてがそうというわけでなくて、古民家を好きにいじれるのよいとか、自分なりのスタイルで好きに住めるのが気にいっている、などのようなポジティブな感想も少なくないので、その人が何を求めていたのかということにもよりますが、住宅に関してはかなり慎重に選ぶことをおすすめします。
Need help for Project.
Tags: ux, programming, webdev, frontend
Published: 2021-10-12 03:41:55

So coming to the point. I need help with my project. I am currently working on [Webstore](webstoreapp.netlify.app/)(Community/Social Media/Platform for developers to share their amazing web project with the world). Currently, my biggest challenge is User Interface(I suck in this). So I am looking for someone who can redesign a good layout for us and for the whole community to make an impact on the next big thing for developers 😃. If you want to join this journey with me please let me know in the comments. I will then contact you further.

## Here are some page demos
### -Feeds Page
![feeds-page.png](https://project-assets.showwcase.com/7803/1634007509254-feeds-page.png)

### -Category Page. Empty
![category-page.png](https://project-assets.showwcase.com/7803/1634007544470-category-page.png)

### -Report A Bug Page
![report-a-bug-page.png](https://project-assets.showwcase.com/7803/1634007587421-report-a-bug-page.png)

### -[About Page](webstoreapp.netlify.app/about) half view
![about-half-page.png](https://project-assets.showwcase.com/7803/1634007619141-about-half-page.png)

### -Create project page
![create-project-page.png](https://project-assets.showwcase.com/7803/1634007701077-create-project-page.png)

### -Profile Page
![profile-page.png](https://project-assets.showwcase.com/7803/1634007739043-profile-page.png)

### -404 page
![404-page.png](https://project-assets.showwcase.com/7803/1634007777324-404-page.png)

### -Setting Page
![setting-page.png](https://project-assets.showwcase.com/7803/1634007806906-setting-page.png)

### -Customization Page (Under Development)
![thems-page.png](https://project-assets.showwcase.com/7803/1634007856097-thems-page.png)

### -Analytics Page
![analytics-page.png](https://project-assets.showwcase.com/7803/1634008004493-analytics-page.png)

### -Message Page (Simple but working on this)
![message-page.png](https://project-assets.showwcase.com/7803/1634008608371-message-page.png)

Please help I will be thankful for this.
[Design Pattern in Go] Proxy
Tags: go, design
Published: 2021-10-12 03:00:36

## What is Proxy pattern

A proxy, in its most general form, is a class functioning as an interface to something else. A proxy is a wrapper or agent object that is being called by the client to access the real serving object behind the scenes.

## When using this pattern

* The access to an object should be controlled
* Additional functionality should be provided when accessing an object.


## Example in Go

```
package main

import (
	"fmt"
)

type Car interface {
    drive()
}

type Driver struct {
   age int
}

type RealCar struct {
    driver Driver
}

func (c RealCar) drive() {
   fmt.Println("I am driving!")
}

type ProxyCar struct {
    driver Driver
    car RealCar
}

func (c ProxyCar) drive() {
   if c.driver.age < 20 {
      fmt.Println("Too young, cannot drive")
   } else {
      c.car.drive()
   }
}

func main() {
	driver := Driver{1}
	car := ProxyCar{driver, RealCar{}}
	car.drive()
	
	driver = Driver{40}
        car = ProxyCar{driver, RealCar{}}
	car.drive()
}
```

https://play.golang.org/p/SK10EKL_iXF
Web Components, element APIs, and what to consider...
Published: 2021-10-10 18:38:08

##Project Comp: 
When designing a new web component there's several things we need to consider: what kind of elements and attributes is it going to use? How accessible is it? What kind of functionality should it have when someone interacts with it? To get a good sense of these things I found a comparison:  
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/glafbj9gokdkl9wga5z1.png)

This is an example of what I want to create, a "learning card" that can be broken down into several elements such as: 
* An Icon at the top 
* A banner with a header and sub-header 
* HTML slots at the bottom 
When designing these elements I'd have to consider what kinds of color contrasts should there be? Is there a light mode and dark mode? I'd also have to make sure that the font is readable and correctly color contrasted. 

##Potential Difficulties: 
I have two main issues I'm concerning about when designing this card. The first is that I am not entirely sure yet how I can put a link either in the header banner or within the card content. I think I will try to figure this out by comparing my previous web components using buttons and seeing what kind of comparisons I can draw from that as well as find some open source projects of cards with links in them. My second concern is trying to create a state for the card for mobile use. I think I can solve this by using media queries and adjusting the screen size to detect for the pixel length of mobile devices. 

##What's Manageable: 
So far I think its been pretty ease to create different accessibility and color contrast states that made the card look readable and easily accessible. Changing the different border colors, text colors, fonts, and background colors have made the card look accessible and easy to read. While not all of the elements within the card are accessible yet, most the the card could be read by a screen reader.

##What's next: 
While the card is at a good base level of readability, I still want to make it have more functionality such as having a state for mobile devices, and having links within the card. While the card still leaves a bit left to desired I believe it will be in a very polished state in the near future.
A curated list of useful tips, tricks and links related to Laravel, Vue, MySQL and other web development related content
Tags: laravel, mysql, vue, php
Published: 2021-10-12 02:31:04

I’ve created a list of useful tips, tricks and links related to PHP, Laravel, Vue, MySQL etc. that I’ve found on the internet and will be updating it regularly as I find more content over time.

https://twitter.com/i/events/1447561030209523712?s=21