teleren/devto huggingface dataset:
Book Review - Building Machine Learning Powered Applications 
Tags: books, machinelearning, nlp, flask
Published: 2021-01-12 10:50:49

Book Review - Building Machine Learning Powered Applications by Emmanuel Ameisen

I found this book a bit frustrating to follow. 

Wherever the code is shown in the book and a link provided - it is to the main github repo and not to the individual jupyter notebook or python code. Nor was the filename mentioned beneath the code snippet.

Not a deal breaker but it is *frustrating.*

## Pros 

- Covers a lot of theory on building a machine learning application
- You build a ML Editor that gives recommendations 
- Important concepts are illustrated in specific notebooks
- Incremental changes to the model for better results

## Cons

- More theory, less code
- Light on deployment details
- Book links point only to the main repo and not the specific file with the code 
- Not all tied together (filter models / tests). 

[My github repo](https://github.com/vidyabhandary/BuildML) - It contains the chapter numbers in the filenames.

### Some images from the final built machine learning app with recommendations.

### 1. Main page of ML Editor
![ml1](https://dev-to-uploads.s3.amazonaws.com/i/ez0x5i4jmvaaikwvlq9x.PNG)

### 2. Model V1 - Sample Question

![ml2](https://dev-to-uploads.s3.amazonaws.com/i/6cyd0km2lwystro7kybb.PNG)
 

### 3. Model V1 - Readability score

![ml3](https://dev-to-uploads.s3.amazonaws.com/i/fxcxii0pn54wa3kw5hwi.PNG)
 
### 4. Model V2 - Sample Question

![ml4](https://dev-to-uploads.s3.amazonaws.com/i/6knw706al7n1wxe901o5.PNG)
 
### 5. Model V2 - Question Score

![ml5](https://dev-to-uploads.s3.amazonaws.com/i/ws1hxi7wnipp1fm04i0f.PNG)
 

### 6. Model V3 - Sample Question

![ml6](https://dev-to-uploads.s3.amazonaws.com/i/zfjnjop487k1oey3yj0v.PNG)
 

### 7. Model V3 - Detailed Recommendations

![ml7](https://dev-to-uploads.s3.amazonaws.com/i/08ckj3y1q0j61w971nyx.PNG)
 

### 8. Model V3 - Another Recommendation example (Copied from writers.stackexchange.com)

![ml8](https://dev-to-uploads.s3.amazonaws.com/i/fen7zowjp73domkel2jf.PNG)
Mac 無法連接 D1 mini 等使用 ch340 晶片的控制板
Tags: d1mini, ch340, driver
Published: 2021-01-12 10:23:17

現在許多中國生產的控制板, 例如 Arduino UNO 相容板、D1 mini 控制板、甚至 Arduino Nano 相容板都採用 [ch340 晶片](http://www.wch.cn/products/CH340.html) (只要看到 USB 插孔附近有一顆瘦瘦長長的黑色晶片, 多半就是了) 作為 USB 傳輸, 但日前在課程現場遇到越還越多的 Mac 族, 在安裝了[官網上 1.5 版的驅動程式](http://www.wch.cn/download/CH341SER_MAC_ZIP.html)後卻無法正常連接控制板, 網路上搜尋似乎也[災情頻傳](https://github.com/adrianmihalko/ch340g-ch34g-ch34x-mac-os-x-driver)。由於新版的 MacOS 已經內建有可搭配 ch340 使用的驅動程式, 因此若您遇到此問題, 最簡單的方式就是把安裝的驅動程式移除, 請依照以下步驟移除驅動程式試看：

1. 拔除 D1 mini 或其他控制板
1. 解除已安裝的驅動程式, 請開啟終端機, 並在終端機中輸入以下指令停止目前的驅動程式：

    ```bash
    sudo kextunload /Library/Extensions/usbserial.kext
    sudo kextunload /System/Library/Extensions/usb.kext
    ```

1. 在終端機中輸入以下指令移除驅動程式：

    ```bash
    sudo rm -rf /System/Library/Extensions/usb.kext
    sudo rm -rf /Library/Extensions/usbserial.kext
    ```

1. 重新開機
1. 不要安裝驅動程式, 直接接上 D1 mini 或其他控制板應該就可以了
Day 9 :100DaysOfCode
Tags: 100daysofcode, flutter, codenewbie, productivity
Published: 2021-01-12 10:22:49

Got a bit late to post...
but its here,

day strted with classes, then
leetcode problems 
continued with trees.....

studied two algos(prefix sum nd kadane's algo)
practised some problems from each
no much development today 
will again progress with my portfolio tmrw.

You can Follow me->
https://github.com/singhtaran1005
https://www.linkedin.com/in/taranpreet-singh-chabbra-27517918a/
Should routing go before security?
Tags: discuss, security, help
Published: 2021-01-12 10:12:10

Recently I've got into an argument with a colleague in regards to what HTTP status to return.

The way our API works right now: you need to be authenticated to call any route except the ones which are explicitly configured as public. This means that if you call any endpoint (doesn't matter if it exists or not) without a token, you will get a 401 response. If you call a non-existing endpoint with a valid token, only then it returns 404.

My colleague says that it should be the other way around and we should first check if the route exists and only then validate the token.

**What's your opinion on this issue?** I've seen it done both ways and I don't have a problem with either approach, but I am leaning more towards returning 401 before 404, because unauthenticated calls shouldn't reveal whether endpoint exists or not.
Tech Exceptions new Episode -The Data Behind MLOps
Tags: career, azure, startup, techtalks
Published: 2021-01-12 09:55:08

Many times, when an organization is asked to add more ML-based features or products, they immediately start with hiring ML experts or experienced data scientists.
After finding the best talent in the market, the new data scientists are facing the challenge of access to data and no existing infra to support their needs.
The new data scientists team is now facing a data and MLOps challenge rather than a pure data science one. They spend 70% of their time collecting, cleaning, and preparing the data for ingesting them to the machine learning algorithms. 
Later they face the challenge of validating the models and communicating the outcomes to the engineering teams to code the model and deploy to production.

This full cycle can take months, and by the time the ML model is being deployed to productions, the competitors already developed a better one, and the company losses its technical edge. 

This is why data scientists need a platform to create and build their state of the art machine learning models.

Microsoft Azure is offering Azure Machine Learning to help with this task.

Here is a free 1 hour course for you to learn about it:

[<img src="https://dev-to-uploads.s3.amazonaws.com/i/5b9kofg7r2hvbr3yt9gh.png">](https://docs.microsoft.com/en-us/learn/modules/intro-to-azure-machine-learning-service/?WT.mc_id=techexceptions-10917-adpolak)


To understand the importance of such a platform, we've met with Yaron Haviv, Co-founder and CTO of Iguazio for a chat on how they work with Microsoft and the evolving world of productionizing Machine Learning.  

Watch here:
[<img src="https://dev-to-uploads.s3.amazonaws.com/i/d4xle49t7fe9wky3t6kx.png">](https://aka.ms/AAakfzh)

We hope you will enjoy it and happy to take your career and startup questions at [@adipolak](https://twitter.com/AdiPolak) and [@TechExceptions](https://twitter.com/TechExceptions)
How to Create An Image Slider in HTML and CSS
Tags: html, css, javascript, webdev
Published: 2021-01-12 09:36:00

The image slider is an element that allows you to organize many images in one place. It can also be called a modern image gallery. This type of slider is very easy to make. You can only make it using HTML, CSS, and JavaScript programming code. I have already shared with you how to make many types of sliders but this slider is completely different. It can be called a [fullscreen image slider](https://www.foolishdeveloper.com/2021/01/full-screen-image-slider-using-html-css.html) in general. In this case, the images can be seen throughout the display. Here you can use as many pictures as you need. Two buttons are used here to change the images. JavaScript programming code has been used to make those buttons work. HTML code is used to add images. The [image slider](https://www.foolishdeveloper.com/2021/01/full-screen-image-slider-using-html-css.html) has been designed in a completely modern way using CSS code.

Using the links below you can download the source code needed to enhance it and watch the live demo. You can also use the link below to watch the video tutorial.

 ➤ [Demo and Download Code](https://www.foolishdeveloper.com/2021/01/full-screen-image-slider-using-html-css.html)

 ➤ [Watch Video Tutorial](https://www.youtube.com/watch?v=vqS0LkwJIvU)
WHY I NEED A BLOG ACCOUNT
Tags: javascript, beginners, programming, webdev
Published: 2021-01-12 09:31:45

Yes, why do i need a blog account? I am a developer not a blogger, i write codes not blogs. OK, well said. Developers write codes not blogs and i never said writing blogs are necessary but having a blog account. It is very necessary, and why? Let's dive into this a bit deeper;

- Most top developers have and write blogs, do not misinterpret me, I'm not saying that is a parameter for being a top developer. What i mean is that the more they write, the more they teach; the more they teach the, more they get feedbacks; the more they get feedbacks, the more they learn; and the more they learn, the better they become. Brood on this.....

- Let's leave the aspect of having or writing blogs but discuss why you need a blog account. Yes, you are a developer but being able to learn daily makes you a real developer. As a developer, your career is a "never ending learning process", if you need to learn more about this click here. If you want to be better at what you do, you've got to read documentations, blogs, eBooks etc because it contains of resources like (advice, motivations, experience and so on) which you can get from your tutorials. So, having a blog account will help you access these resources for free or paid based on the platform.


Please kindly comment below for feedback and you can also link up with me on [TWITTER](https://twitter.com/chryz_codez) and also follow me on this platform for more engagement, motivation and support as a developer.
What is The Best Cryptocurrency to Invest in, 2021?
Tags: whitebitcoin, wbtc, wbtccryptocurrency, whitebitcoinprice
Published: 2021-01-12 09:28:06

Cryptocurrencies are one of the projecting trading instruments that have attracted and still attracting more and more investors every year. The cryptocurrency market has seen huge growth since 2013. There are now more than 5000+ types of cryptocurrencies to choose from in the cryptocurrency market. The main reason for this popularity is the usage of advanced equipment - Blockchain technology is the root of all these cryptocurrencies. Blockchain is the upcoming and best technology and investing in cryptocurrencies promises higher returns. 
 
Now, to identify the best cryptocurrency to invest in in recent times, one needs to be clear regarding the motive of investment, length of investment, platforms, transparency, and of course the liquidity rate of the chosen currency. Another significant factor is one need to analyze the future ROI depending on the previous performance of the currency. Since Cryptocurrency can be bought in a fractional system it makes the currency even more affordable and it is the best option for those who are young investors in cryptocurrency.
 
Based on all the above concerns, two main cryptocurrencies have stood so far till present times.
 
1. **Bitcoins**: When one talks about cryptocurrency it is hard to ignore bitcoin as it has continued to dominate markets and continue even now. Bitcoin is the first-ever cryptocurrency and no currency has still matched it till now. With trust and popularity, investors will benefit the most from high liquid levels. Thus, investing in bitcoin is a bit expensive but it is more practicable.
 
2. **White Bitcoins (WBTC)**: The updated variant of bitcoin - WBTC (White bitcoin) that provides equal benefits and are also of lower prices than the bitcoins. White Bitcoins (WBTC) is one of the decisions one must take as it offers high liquidity to the cryptocurrency ecosystem, are safer and are rising as one of the most trustable currencies.
 
The pioneers of cryptocurrency bitcoins will be the preferences and the emerging currencies like [WBTC (White Bitcoins)](https://www.whitebitcoin.io/) will be exciting and they will be the safe option for investors and traders who are beginning their journeys in the digital space.
Making Shopify App installable
Published: 2021-01-12 09:25:58

Hi,

I want to make my Shopify Website installable. I do not intend to make it a complete PWA. Just having a 'Add To Home Screen' would suffice for me. I do not want to go much into cache and offline behaviour also. 
I know how to make this for a self-developed website (i.e. Linking with manifest.json). I tried to edit the theme files and achieve the same result but it didn't work. I am getting the 'start_url' error.

P.S. I do not want to use any third party Shopify apps for this.
Learning WebAssembly
Tags: webassembly, javascript, programming
Published: 2021-01-12 09:21:49

A series of learning texts covering the first steps with WebAssembly for complete beginners.

---

Some time ago I started learning WebAssembly as an absolute beginner. It has been an exciting but not so simple journey.

I decided to publish my continuous and probably neverending notices to make your learning path a little easier.

Here is the actual list of already finished posts. I will constantly update and extend it.

### [Hello, World of Wasm!](https://blog.ttulka.com/learning-webassembly-1-hello-world-of-wasm)

Let’s try WebAssembly for the first time. We will create a simple program in the Wat text format, compile it into Wasm binary, and finally execute it in a browser and as a server application.

### [Wasm Binary Format](https://blog.ttulka.com/learning-webassembly-2-wasm-binary-format)

We will explore the structure of the Wasm binary format byte by byte.

### [Wat Programming Basics](https://blog.ttulka.com/learning-webassembly-3-wat-programming-basics)

Finally some real programming! We will learn the very basics of the Wat text format, how to work with functions and variables, write conditions, and loops.

### [Wasm Memory and Working with Strings](https://blog.ttulka.com/learning-webassembly-4-wasm-memory-and-working-with-strings)

The concept of memory objects is very important know-how in Wasm. We will use it to deal with strings.

### [Running Wasm in the Browser](https://blog.ttulka.com/learning-webassembly-5-running-wasm-in-the-browser)

WebAssembly is part of the web platform, thus it is important to understand interactions between Wasm and JavaScript. We will learn about shared memory and global variables.

### [Running Wasm in Node.js](https://blog.ttulka.com/learning-webassembly-6-running-wasm-in-nodejs)

Browser is not the only environment that Wasm can run in. We will also learn how to execute Wasm in Node.js, the popular backend platform.

### [Introducing WASI](https://blog.ttulka.com/learning-webassembly-7-introducing-wasi)

WebAssembly System Interface (WASI) provides access to several operating-system-like features from Wasm. We will learn how to write programs that use WASI.

### [Compiling into Wasm](https://blog.ttulka.com/learning-webassembly-8-compiling-into-wasm)

There are plenty of languages that can be compiled into Wasm. We will take a look at some of them.

### [AssemblyScript Basics](https://blog.ttulka.com/learning-webassembly-9-assemblyscript-basics)

AssemblyScript syntax is very close to JavaScript and as such is an ideal candidate to write Wasm in. We will explore the basics of AssemblyScript and create a few neat programs.

### [Image Processing in AssemblyScript](https://blog.ttulka.com/learning-webassembly-10-image-processing-in-assemblyscript)

WebAssembly is a great fit for computation-intensive tasks like generating and processing graphics. We will experiment in this field a little.

---

You are welcome to join me on the exciting journey of learning WebAssembly!
Tech Exceptions new Episode - From Open Source to Multi B$$$ IPO
Tags: career, startup, techtalks, opensource
Published: 2021-01-12 09:21:44

When JFrog started 12 years ago, they were built on the founders' open source project. They were among the first startups to believe that a company can be built and make money while sharing free code. Some years later, they IPOed at a valuation of $6.36 Billion. which is an incredible number for the startup community.

JFrog is collaborating closely with Microsoft, on both the business side and the technical side.
JFrog Artifactory hosted on Microsoft Azure is a solution for developers and DevOps engineers that provides complete control, insight, and binary management throughout the software development lifecycle. DevOps teams have transparency and control of their entire build and release process, all with the power of cloud-based development.

Read here to learn more about [Azure Artifacts](https://docs.microsoft.com/en-us/azure/devops/artifacts/overview?view=azure-devops&WT.mc_id=techexceptions-10917-adpolak).


Recently we interviewed Casey O'Mara who is an active board member of the CNCF (Cloud Native Computing Foundation), previously worked for AWS and Microsoft as an architect, and today, he is the JFrog VP of Business Development.


Curious what Casey had to say about Open Source? Watch the interview here:

[<img src="https://dev-to-uploads.s3.amazonaws.com/i/6tn6oeffz8mh2txkmj09.png">](https://aka.ms/AAaeqb8)




We hope you will enjoy it and happy to take your career and startup questions at [@adipolak](https://twitter.com/AdiPolak) and [@TechExceptions](https://twitter.com/TechExceptions)
Socket.IO Chat App
Tags: socketio, html, css, javascript
Published: 2021-01-12 09:18:13

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/aysyd4trhok6xy2ytbmc.PNG)

I created my first chat app with Socket.IO. Feel free to review my code and share your advice.

Demo: https://socket-io-chat-mnd-app.herokuapp.com/

{% github mndalex/socket-io-chat no-readme %}
Connect to ActiveMQ using python STOMP
Tags: python, activemq, stomp, programming
Published: 2021-01-12 09:16:44

[ActiveMQ](https://activemq.apache.org/) is an open source message-oriented middleware which is used to transfer messages between multiple applications. It consists of a queue which will hold in the messages and will only transfer when the receiver is available, hence we can be rest assured that the messages won’t be lost if the server is down. The applications could be entirely different and hosted on heterogenous platforms, ActiveMQ can be used to communicate between such systems as well.

For example, large applications built in microservices architecture and written in disparate programming languages, where communication is often but an offline service should not cause any loss of messages.

Working of ActiveMQ:
There are two endpoints in ActiveMQ,
1.	Producers – who send the messages to the message broker.
2.	Consumers – who read these messages one at a time.

ActiveMQ stores the messages in the form of queue or topic. 
* **Queue**: A message is sent to a single consumer and if the consumer is unavailable then it is held by activemq until the consumer is available to receive the message.
* **Topic**: A message copy is sent to all of the subscribers who are interested in a particular topic. Unavailable consumers will not be receiving the past messages. 

Now let us see how to create this consumer code and subscribe to an ActiveMQ topic in Python.
Python provides a client library called **stomp.py** for connecting with any type of message brokers using **STOMP protocol**.

Step1: install the latest version of stomp available.
`pip install stomp.py`

Step2: The consumer script.
```python
import stomp
#Establish a connection
con = stomp.StompConnection([(‘Host’,port)])
#listener class to be instantiated.
listener = MsgListener()
con.set_listener(‘name_of_listener’, listener)
#wait will ensure it waits till connection is established and acknowledged.
con.connect(‘usernanme’, ‘password’, wait=True)
#subscribe to a particular topic or queue by giving the path and headers if required by the server.
con.subscribe(‘topic/path’, headers={})
```

Step3: Listener class for your processing.
```python
Class MsgListener(stomp.ConnectionListener):
	def __init__(self):
        # to keep the count of messages received
		self.msg_recieved = 0 

	def on_error(self, message):
		logger.error(‘received an error “%s”’ %message)
	
    def on_message(self, message):
	    message = json.loads(message)
	    self.msg_received +=1
	    # add your logic based on the message received here
```
If the `con.subscribe` is being done to a topic, then a published message will go to all the subscribers who have active subscription at the time of message published.
Whereas, if it is a queue only one consumer will receive one message. Messages are load balanced among the available consumers.
Tableau Certification Online Training Course
Published: 2021-01-12 08:52:48

The [Tableau online course](https://www.igmguru.com/data-science-bi/tableau-training/) by IgmGuru is planned to assist users in dynamic learning about Data visualization using Tableau. The foremost goal of the learn Tableau online course is to help users gain a working knowledge of Tableau and visualize data into the dashboard using the tools provided by Tableau platform. The Tableau online training provides a basic understanding of Data types, extraction of Data, data blending, adding filters, highlighting data, geocoding, map and image visualization, and many more technical details about Tableau. IgmGuru’s online tableau training course for Tableau course helps users to culminate an outstanding knowledge of Data visualization using Tableau and develop a technical aptitude to design interactive dashboards based on organizational requirements.
Handling Post Requests in Node.js ✨#5 | MERN Stack Tutorial With Auth
Tags: node, javascript, webdev, codenewbie
Published: 2021-01-12 08:44:52

Hello, the following video tutorial will show you how to handle `POST` requests using Node.js.

>Follow my comprehensive `MERN` stack series:  [MERN Stack Tutorials](https://youtube.com/playlist?list=PL63c_Ws9ecIQkH5xD6JW4cf2VporjzSRW)
>Subscribe to my YouTube Channel: [SUBSCRIBE](https://www.youtube.com/channel/UCe8uN9zoKksCb1hfw61myRw?sub_confirmation=1)
>Follow me on twitter: [@chaoocharles](https://twitter.com/ChaooCharles)

##Video Tutorial 👇
{% youtube h28Qrd516-E %}
มาจัดการ Dependencies ของเจ้า Firebase SDK ด้วย BoM กันเถอะ
Tags: android, firebase, bom, dependencies
Published: 2021-01-12 08:20:48

##**ปัญหาเวลาเรา implement SDK ของ Firebase**

คิดว่าทุกๆคนที่เป็น Android dev น่าจะเคยเจอปัญหาหรือปวดหัวมาบ้างเวลาเราใช้งาน sdk ของ firebase แต่ละตัว ที่เลข version ไม่เคยตรงกันเลย แถมบางครั้งพอเรา update version ของตัวหนึ่งแล้วมันดันทำงานไม่เข้ากันกับ sdk อีกตัวซะนี่ โดยเฉพาะคนที่ชอบลองของใหม่ๆ(เห็นมี update ไม่ได้ต้องชิง update ก่อนแต่ดันไม่ชอบอ่าน changelog ซะนี่ฮ่าๆ)


##**มาดูของเก่าที่เราเคยใช้ๆกันก่อน**
ปกติแล้วเราก็จะประกาศเหมือนในรูปด้านล่างนี้กันแล้วก็ระบุเลข version กันไปตามแต่ละตัว ทีนี้เวลาเราจะ update เราก็ต้องไปแก้เลข version ของแต่ละตัวกันเนอะ
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/lp0fktz1lm0qap0679bo.png)


##**โอเค ทีนี้มาทำความรู้จัก Bills of Material (BoM) กัน**
BoM ถูกเพิ่มเข้ามาใน Gradle ตั้งแต่ version 5.0 ขึ้นไป 
[รายละเอียดอ่านเพิ่มเติมได้ที่นี่](https://docs.gradle.org/current/userguide/upgrading_version_4.html#rel5.0:bom_import) 

ซึ่งทาง Google เองเค้าก็น่าจะเห็นถึงความ Pain ของเราๆ เลยทำตัวจัดการ dependencies เพื่อรองรับการเรียก dependencies จากที่เดียว โดยให้เราเรียกใช้อีกทีหนึ่งนั่นเอง โดยที่เจ้า BoM มันจะไปทำการดึง SDK ตามที่เราประกาศไว้มาให้เราโดยที่เราไม่จำเป็นต้องระบุ version ของ SDK แต่ละตัวเอง เจ้า BoM มันจะไปหา version ของ SDK แต่ละตัวที่เราประกาศไว้ที่สามารถทำงานร่วมกันได้มาให้ เรามีหน้าที่แค่ประกาศ version ของตัว BoM เท่านั้นจบเลย(BoM รองรับ KTX ด้วย) แจ่มสุดๆ 
[รายละเอียดของเจ้า BoM สามารถอ่านเพิ่มเติมได้ที่นี่นะ](https://firebase.google.com/docs/android/learn-more#bom)

**Release note**
[Release Note ของเจ้า BoM]
(https://firebase.google.com/support/release-notes/android)

ตัวอย่างเช่นรูปนี้
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/ozmsy0lfzaxbjo3tlg23.png)

และอันนี้คือตอนที่นำไปใช้งานจริงๆ
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/mj206g2nd5kgyd6q5o7q.png)


เท่าที่ลองใช้งานมายังไม่เจอปัญหาอะไรนะ หวังว่าบทความนี้จะเป็นประโยชน์กับผู้อ่านไม่มากก็น้อย อันนี้เป็นบทความแรกด้วยผิดพลาดยังไงแนะนำและติชมกันได้นะฮะ