fabiochiu/medium-articles huggingface dataset:
Best Machine Learning Blogs to Follow in 2020
By: Roberto Iriondo
Tags: Machine Learning, Science, Data Science, Machine Learning Blog, Artificial Intelligence

Best Machine Learning Blogs to Follow in 2020

Keep up with the best and the latest machine learning (ML) research blogs through reliable sources

From researchers to students, industry experts, and machine learning (ML) enthusiasts — keeping up with the best and the latest machine learning research is a matter of finding reliable sources of scientific work. While blogs usually update in a more informal and conversational style, we have found that the sources in this list are accurate, resourceful, and reliable sources of machine learning research. Fit for all of those interested in learning more about the scientific field of ML.

Please know that the blogs listed below are by no means ranked or in a particular order. They are all incredible sources of machine learning research. Please let us know in the comments if you know of any other reliable blog sources in machine learning.

The machine learning blog at Carnegie Mellon University, ML@CMU, provides an accessible, general-audience medium for researchers to communicate research findings, perspectives on the field of machine learning, and various updates, both to experts and the general audience. Posts are from students, postdocs, and faculty at Carnegie Mellon [1].
Running a Jupyter Notebook in an Astronomer Airflow Local Development in 6 easy steps
By: Kyle Shannon
Tags: Airflow, Jupyter Notebook, Etl, Astronomer, Python

Step 1

Add the following to packages.txt in your Airflow project root directory. These packages are to support the running of Jupyter within your docker image.

build-base

python3-dev

zeromq-dev

Step 2

Add the jupyter package to your requirements.txt which also resides in the airflow project root directory

jupyter

Step 3

Now we’ll need to either create or add to a file named docker-compose.override.yml within the Airflow projectroot directory. This file allows you to append/modify the default docker-compose file for the Astronomer Airflow image. We’re going to open the default port of 8888 for our Jupyter Notebook on the webserver docker container.

version '2'

services:

webserver:

ports:

- 0.0.0.0:8888:8888

Step 4

Start your local instance with astro dev start if currently running, first run astro dev stop

Step 5

Find the docker container id for your Airflow webserver by running docker ps

The output will show you 3 images running, one for the webserver, one for the scheduler and another for postgres. In this case we want the container id for the webserver. It should be around 10 characters a mix of lowercase letters and numbers as seen in the image below.

Step 6 (Last!)

Now we’ll want to execute jupyter notebook from the webserver container by running

docker exec -it xxxxxxxxxxxxx jupyter notebook --ip 0.0.0.0 --port 8888 --no-browser

Let’s break down the statement above a bit further:

docker exec -it — executes a command -it interactive text terminal

xxxxxxxxxxxxx is the id of the container found in step 5

jupyter notebook is the command to run jupyter notebook everything after this line are options for running

--ip 0.0.0.0 because we’re in a docker image we need to define the ip running as 0.0.0.0 in order to port forward to your local machine

--port 8888 is the running port that we defined in earlier steps. If you chose to run on a different port you can put that number here instead

--no-browser because this is running within the docker container airflow web server, we do not need a web browser to auto launch as we will handle that on our own.

Assuming this all ran correctly you should see output similar to this:

Console output from running Step 6

Load up Jupyter Notebook in your favorite browser

Now you can use this dockerized notebook as you would any other notebook.

By visiting the http://127.0.0.1:8888/?token= link at the bottom of the output we are now running a Jupyter Notebook in our Airflow web server.

Note: If you are prompted for a token, you will need to leverage token seen in the output, in the example above it is aa4234d685bf1f43799fd55e49cc86fb2b9feb9da445bd73

This token will be different on every start of the jupyter notebook

Jupyter Notebook running in Airflow project root directory

Within this notebook you can now write code as you would for a DAG being able to leverage connections, variables and native hooks interactively
What AI Can Teach Us About Failure
By: Nate Rutan
Tags: Failure, Life Lessons, Success, Psychology, Artificial Intelligence

What AI Can Teach Us About Failure

Please don’t buy into failure-ism. Train for strikes not gutter balls.

Photo by Jorik Kleen on Unsplash

If you’ve read anything on business in the last two decades, there’s a good chance you’ve heard that failure is significant, something to be proud of, a badge of entrepreneurial prowess.

Ostensibly, the more you fail, you are somehow more successful.

This approach is undoubtedly accurate to a point.

I agree that failure is a needed part of the process of success, only that we may have emphasized the wrong thing.

Now, I’m certainly all for reframing our mistakes as something else, especially when this helps us move forward more productively, gaining resilience and flexibility.

This thought process is one of the core ideas behind CBT or cognitive behavioral therapy. And the reason is that it works. Studies show that CBT can help us move past some of our worst failures and emerge on the other side, happier, healthier and wiser.

But speaking from experience, I’d rather have one success than ten failures, and here’s why.

It’s not just me. Experts have been cautioning for a while that this culture of “failure-ism” might not be the best way to achieve our goals.

At the heart of Failure-ism is an unsubstantiated, almost romantic notion of the value of randomness. Many motivational speakers seem to be saying that if we open ourselves to the possibility of failure, something positive will happen, almost by a kind of magic.

Indeed, recent studies have confirmed that failing is not precisely the panacea that many are making it out to be.

Some studies have shown that people do indeed learn from their mistakes, but only if you’re in the same ballpark to the right answer

Here’s what the research says:

The Centre for European Economic Research, for example, had found that entrepreneurs who previously failed were no more likely than novices to launch a successful venture, echoing another study that found those who had failed before were less likely to succeed than complete neophytes.

I don’t know about you, but this reminds me a little of the recent trend of so-called gurus taking a pile of cash, renting a Lambo, and flashing all of this in your face on a YouTube ad.

Buy their 1000 dollar course, and you’ll be rolling deep in a Malibu crib with an infinity pool dropping off the edge of a perfectly manicured cliff into your private beach.

I read a great article the other day on this subject. It all makes sense, however. How easy it is to reframe failure as success and ironically go out and make money doing this.

But you may want to rethink trusting in failure as a sign of success, the same way you’d be wary of a skinny chef.

The whole fake it until you’ve made it routine. While I know, many psychologists have recommended this strategy as a coping mechanism, especially in situations like social anxiety, this has taken it to an entirely different level.
Things I Learnt Working For Myself
By: Ahamed Nizar
Tags: Tips, Startup, Freelance, Consulting, Entrepreneurship

It’s been over a year since I quit my full-time job to make my way in the world in the ship of ATRIUM Consultancy. I got smart with myself and my social circles and decided to leverage my skills to my broad network. Having been in the Hospitality and Tourism trade for 6 years enabled me to not break into new territory but to use knowledge in an industry I am well versed in.

Being an independent worker, people are paying you for your time and for your skill.

Once you have established yourself as someone who moves within that industry it’s much easier to reach out to newer clients. My first few breaks came from friends and acquaintances I made during my work years. They have seen the result of my direct involvement of the company I worked for and wanted to see it in theirs.

After ten years of working fulltime with a freelance gig on the side, I was able to transcend to being a fulltime-freelance worker. These are a few thing’s that I learnt during my journey.

Know Your Worth

To be a good consultant you need to have a string of victories behind you. The more ownership you have of those victories, the more you can charge. Even if you don’t and you’re starting up, even as a freelancer make sure that you price yourself well. There are times that people would take this advice without doing a quick reality check of themselves, it may be tough but it’s needed to gauge where you stand.

If you do have success stories behind you then you can charge a much higher rate but always check the market for a rough price idea. The habit of overselling and under-delivering is very persistent in the services and consulting industry. So being too cheap to get more business will make you look desperate, whilst overcharging will have no one looking at you.

After a year of doing business at various price points, I entered the new year with a higher and more consistent price tag for my services. I weighed the experience I had, the success stories of my life and the service I was offering and decided to mark up my prices and increase the time and energy per client. This meant I would take on fewer clients, but this way I get compensated more which pushes me to work harder, smarter and better.
Monday Marketing Meeting at the Chateaux de la Swine
By: Reuben Salsa
Tags: Satire, Humor, Writing, Marketing, Salsa

THE SALSA DIARIES #2

Monday Marketing Meeting at the Chateaux de la Swine

There’s a time and place for cock

Salsa dyed cock. New from the Chateaux de la Swine. Photo by laura adai on Unsplash

At the Chateaux de la Swine it was time for our daily dose of marketing. A meeting that often descended into chaos as each flamboyant hipster tried to outwit the previous. No idea was a dumb idea but I contest that the Pitbull of Chronic Humping™ may have been one step too far.

Our mission is to turn the world into a waste dump for our cheaply produced Salsa themed products. ‘If it ain’t got the heat then it ain’t got the salsa’. The meeting coincided with our once a month special endurance celebration. Yes, it was ‘Break An Intern Week’®. Seven days of physical and psychological torture for the thrill of destroying young spirits overflowing with optimism. This was the real world and there are no easy rides at the Chateaux (except for Hilda in Accounts Payable).

At the podium stood Smith and Weston. Two young bucks who were yet to break. I hadn’t the faintest idea what their actual names were but was assured that both were aptly titled. Apparently, they went off in your hand Jerry said. I liked Jerry. A loose cannon of a product tester whose ability to smear Salsa on his buttcheeks was legendary.

Smith, the Californian blond, was holding erect a large salsa themed, throbbing cock. And by cock, I mean chicken. And by salsa themed, I mean somebody had taken the time and effort to dye the cock in an unceremonious salsa red. The pungent cock was clearly aggrieved as it wrestled in the firm grip of Smith.

Weston was beaming. He began to talk. I wasn’t pleased. That damn cock was making a mess all over my expensive boardroom carpet. I had it imported from a whorehouse in Eastern Mongolia. The embedded smell alone reeked of a thousand years of cum related debauchery. I scrabbled around in my second drawer trying to find my Silencer.

Weston was now visibly shaking and had started to leave large patches of sweat under each armpit. Jerry meanwhile was fondling his balls under the board table. He knew I was about to make another intern shit his pants.

Just then, the cock broke free and ran head-on at Jerry. Unable to free his hands from his pants, the cock flew at his face, beak armed to peck.

It was going to be a bloody mess…again.

I placed the Silencer on the desk and sat there, gently massaging my forehead as another migraine started to take hold. I wondered if my nemesis Ev Williams ever had days like this. I imagined that even Ev never had to deal with the sight of Janet on all fours probing for a detached eyeball.

Roll on Tuesday.
Unleash Your Full Potential With The Power of Mindfulness
By: Karolin Wanner
Tags: Success, Mindfulness, Mental Health, Self, Psychology

Unleash Your Full Potential With The Power of Mindfulness

10 wise quotes to inspire success in your life by Eckhart Tolle.

Photo by Lukas Rodriguez from Pexels

You feel stuck in your life? Do you wonder when the magical moment will come when you have the energy to do what is necessary to fulfill your wildest dreams?

Why are we not fulfilled? Why is a success not coming for us? Eckhart Tolle is one of the most inspiring spiritual teachers of our time. His simple teachings have helped millions to live happier lives, but for advice on becoming successful we look up to entrepreneurs like Jeff Bezos or Elon Musk.

Mindfulness is for private stuff, so we think. But everything is connected. Being aligned with the present moment is the start of every success story.

Here are 10 powerful quotes to help you escape mediocrity and fulfill your wildest dreams. Get inspired to unleash your full potential with the power of mindfulness.
4 Unique Traits of an Extremely Likable Person
By: Katy Velvet
Tags: Self Improvement, Relationships, Life Lessons, Psychology, Mental Health

1. Be curious and ask interesting questions.

According to several studies published in the Greater Good Science Center, curious people have better relationships. The research suggests that people who are curious are “often viewed in social encounters as more interesting and engaging and they are more apt to reach out to a wider variety of people.”

As a result, people are naturally drawn to others who display a sense of curiosity. They are seen as more confident and ultimately, more attractive.

Next time you meet someone new, instead of asking them the typical “what do you do for a living?”, hit them up with some open-ended questions that will lead to a more interesting conversation. Ask them what the highlight of their day was or what their dream job was growing up.

Note: Of course, you may have to ask some basic questions to build some rapport initially. But once you move past that, you can dive into deeper questions that may provoke a more engaging interaction.

2. Acknowledge others and always use their name.

We don’t really think much about names, but using them often actually makes other people feel more important.

If you don’t believe me, try using this at work more often this week and see how others react to you.

The other person will most certainly pick up on this and with every mention of their name, they will naturally turn towards you and remember how you made them feel. It will create a good impression on that person and naturally create a more positive bond between you two.

Another important thing is remembering other details about their lives that they have shared with you previously, like the names of their partner or what they did over the weekend.

3. Describe other people in a positive way.

Research has found that when it comes to winning people over, speaking positively of others makes you a more likable person. It puts other people at ease and shows that you are kind and non-judgemental.

Positivity is contagious. Try acting positive around people and you’ll find that they’ll tend to become more positive too.

So smile more, tell jokes and be enthusiastic around others. They will most likely walk away with a warm and fuzzy feeling that they will pass onto somebody else.

4. Mirror body language and speech patterns.

Mirroring is a social phenomenon where people mimic another person’s body language or terms that they use. It’s often subconscious but can be very powerful to showing comfort, trust and empathy.

By repeating back what people say, we are showing them that we understand them and that we are listening. It is a way to step into somebody else’s shoes and see things from their perspective.

Politicians are actually fluent in mirroring and go through intensive training to get as good as they are. It is a powerful tool in communication and helps us genuinely connect with other people.
Debugging Rust code on WSL2
By: Harsimran Singh Maan
Tags: Debugging, Vscode, Development, Productivity, Rustlang

Install Debug Tools

We’ll write a new application to go through the setup steps. You can also clone the application from Github if you don’t want to set it up locally.

cargo init rustapp

cd rustapp

code .

For a linux backend(WSL2 in this case), install the CodeLLDB extension on Visual Studio Code.
The Reason Behind if __name__ == ‘__main__’ in Python
By: Jordan Williams
Tags: Python, Data Science, Learning To Code, Java, Programming

Let’s Get Right Into It!

Let’s start out by deconstructing the statement from left to right. We already know what an if statement is; however, the most important part of the statement are the two things being compared.

Let’s start with __name__ .This is used to denote the name of the file that is currently being run, but there is a trick to this. The file currently being run will always have the value __main__ .

This sounds confusing at first but let’s clarify.

Let’s create two Python files:

current_script.py

other_script.py

Please ensure these files are in the same directory/folder.

Inside the other_script.py file, we’ll add a two-print statement, just as shown below.

print("****inside other script.py*****") print("__name__ is ",__name__)

Run this other_script.py file.

Note: I will be running this file while using Python within the terminal, just as illustrated below. Also note that I am working from a Windows operating system.

python other_script.py

Output:

****inside other script.py*****

__name__ is __main__

Now you realize that it’s just as I stated before. The file being executed will always have the value __main__ . This represents the point of entry into our application.

In Python and pretty much every programming language, we can import other files into our application. We’ll now go into our current_script.py and input the following code:

import other_script print("") print("****inside current script.py*****") print("__name__ is ",__name__)

The code above imports the other_script.py with the import statement at the top, which is followed by print(“****inside current script.py*****”) to verify that we are in the current_script.py file.

Be aware that because we imported other_script at the top of the file, this therefore means that the entire contents of other_script.py will now be injected into where import other_script is.

Before we continue, take keen note of the input of when we ran other_script.py . Now observe what happens when we execute current_script.py .

python current_script.py

Output:

****inside other script.py*****

__name__ is other_script ****inside current script.py*****

__name__ is __main__

You will now realize that previously when we ran other_script.py , it gave us the value for __name__ as __main__ . But now since we ran it as an import in current_script.py , the value of __name__ suddenly changed to the name of the imported script which is other_script .

Furthermore, the value of __name__ for current_script.py is __main__ . This goes back to what I had highlighted previously: The file currently being run will always have the value __main__ .

Let’s put this all together now.
k0s: Kubernetes in a Single Binary
By: Luc Juggery
Tags: Kubernetes, DevOps, Containers, Programming, Startup

Adding a User

Version 0.8.0 of k0s brings the user subcommand. It allows us to create a kubeconfig for an additional user/group. For instance, the following command creates the kubeconfig file of a new user named demo , which is inside an imaginary group named development .

Note: In Kubernetes, users and groups are managed by an administrator outside the cluster, meaning there’s no user-not-group resource in K8s.

$ sudo k0s user create demo --groups development > demo.kubeconfig

To get a better understanding, we’ll extract the client’s certificate from this kubeconfig file and decode it from its base64 representation:

$ cat demo.kubeconfig | grep client-certificate-data | awk '{print $2}' | base64 --decode > demo.crt

Then, we use an openssl command to get the content of that certificate:

ubuntu@node1:~$ openssl x509 -in demo.crt -noout -text

Certificate:

Data:

Version: 3 (0x2)

Serial Number:

71:8b:a4:4d:be:76:70:8a:...:07:60:67:c1:2d:51:94

Signature Algorithm: sha256WithRSAEncryption

Issuer: CN = kubernetes-ca

Validity

Not Before: Dec 2 13:50:00 2020 GMT

Not After : Dec 2 13:50:00 2021 GMT

Subject: O = development, CN = demo

Subject Public Key Info:

Public Key Algorithm: rsaEncryption

RSA Public-Key: (2048 bit)

Modulus:

00:be:87:dd:15:46:91:98:eb:b8:38:34:77:a4:99:

da:4b:d6:ca:09:92:f3:29:28:2d:db:7a:0b:9f:91:

65:f3:11:bb:6c:88:b1:8f:46:6e:38:71:97:b7:b5:

9b:8d:32:86:1f:0b:f8:4e:57:4f:1c:5f:9f:c5:ee:

40:23:80:99:a1:77:30:a3:46:c1:5b:3e:1c:fa:5c:

The issuer property is kubernetes-ca , which is the certification authority of our k0s cluster

property is , which is the certification authority of our k0s cluster The Subject is O = development, CN = demo ; that part’s important as this is the place where the name and the group of the user appears. Because the certificate is signed by the cluster’s CA, a plugin in the api-server is able to authenticate the user/group from the common name (CN) and organisation (O) in this certificate’s subject.

First we tell kubectl to use the context defined in this new kubeconfig file:

$ export KUBECONFIG=$PWD/demo.kubeconfig

Then we list the cluster’s nodes once more:

$ kubectl get no

Error from server (Forbidden): nodes is forbidden: User “demo” cannot list resource “nodes” in API group “” at the cluster scope

This error message was expected. Even if the user has been authenticated by the api-server (the certificate sent alongside the user’s request has been signed by the cluster certificate authority), they don’t have the right to perform any actions in the cluster.
The Speaker, Silent
By: Zach J. Payne
Tags: Ninjabyob, Storytelling, Poetry, Life, Mental Health

after Laurie Halse Anderson

Her silence is a virtue, so they say

with hands that cover mouth and words and breath

awake and sleeping. Should she bite today

or is she best left bleeding? Little deaths

now crawl within and take over her skin

an hour or a month. She blinks her eyes,

pretends that there’s a person past the sin,

regret becomes her middle name, the lies

become a sterling shield until they fold

like tissue paper in a child’s hand —

when every pretense fails she must be bold

or else she shatters, statue made of sand

and trauma. Silence ever breaks her bones

and steals away the moments that she owns.
Some People Just Suck — and It’s Not Your Fault
By: Megan Boley
Tags: Relationships, Life, Mental Health, Self, Psychology

Some People Just Suck — and It’s Not Your Fault

Someone else’s baggage is not your baggage.

Photo by Velvet Morris on Unsplash

I like to agonize over things that I can’t change.

Okay, I wouldn’t say that I like it necessarily — but that doesn’t stop me from obsessing over things that are out of my control anyway.

I also “like” to mull over my past actions and mistakes, retracing my errors and missteps with laser precision, thinking about all the things I could have done differently, or where I went wrong.

It’s this kind of mind-trench that eventually drove me to starting therapy — and it really helped dig me out of my self-inflicted woes.

Not everything is your fault

“Not everything is your fault,” my therapist said to me, after listening to another one of my tearful monologues peppered with self-loathing. Her words surprised me, like a blow to the head. I stopped in my tracks.

What an interesting concept.

I had been telling her about a breakup that broke me in two. I agonized over every detail, over every word that was said between me and my ex. I punished myself endlessly for “screwing up” and being too open about my feelings to my ex, ultimately driving them away and ruining the relationship. Or that’s how my twisted, emotionally clouded mind saw it.

My therapist opened my eyes to the fact that while I may have erred in certain things, the whole entire breakup did not rest on my shoulders. I was not entirely to blame. It takes two people to break up.

It was this particular breakup that taught me that some people just suck, and it’s not my fault that they suck.

Some people just suck

Another more recent breakup reminded me of this — that some people just suck.

I dated someone who was thoughtless and self-centered, but in such a nuanced way that it took me a while to notice. His ego manifested itself in the way where he’d withhold affection or divvy it out carefully just to keep me interested, communicate infrequently, and just generally ignore my feelings.

Several of my close friends were not fans of the way he treated me, and they made their objections known, but I chose to ignore their warnings. The final straw was when I went out of my way to visit him for a weekend — a journey of several hours — and it seemed like the whole time, he didn’t even want me there.

That was finally enough for me to wipe the grime off of my rose colored lenses and see the truth of who he really was.
The shift of humanity is happening in our courtrooms.
By: Desiree Driesenaar
Tags: Rivers, Environment, Nature, Sustainability, Law

The shift of humanity is happening in our courtrooms. The Norwegian philosopher Arne Naess would have been so happy. His Deep Ecology vision is really changing the world now.

We are not only realizing that people are part of nature. We are one. But our law systems are now also acting upon the fact that nature has an intrinsic value. Not to be measured in money. Rivers are the veins of our planet. Undeniably valuable for spirituality and clean drinking water for all species.

Water has many values. Picture: Jeevan Singla via Pixabay

In India, the Ganges has received the same right of law as humans in 2017. Now we are finding ways how to uphold those rights.

© Désirée Driesenaar
How to Get in the Perfect Mood for Coding
By: Piero Borrelli
Tags: Mental Health, Work, Programming, Startup, Technology

How to Get in the Perfect Mood for Coding

Improve your productivity with these emotional tips

Photo by Fabian Møller on Unsplash

Sitting in front of a computer and “just code” is not always that easy. We are humans too, with worry days and tired mornings. Programming is such an emotional game to win. You have to control yourself to disclose your concentration abilities and get the job done.

Think about all you’re asking yourself for when you’re doing it:

Study a problem and ideate a solution for it.

Manage DRY principles, maintenance, scalability and simplicity.

Try not to get distracted when you have Google ready to answer any dumb questions you might have at that moment.

Work under the pressure of an incoming deadline.

Coding is a mental game too. And you should care about being in an appropriate mood for it. So that your days can be productive.

Here’s a list of my advice for reaching such a mood and getting the most out of your days.
9 Writing Lessons I Learned From Drafting My First Fiction Novel
By: Jake Daghe
Tags: Fiction Writing, Storytelling, Fiction, Advice, Writing

9 Writing Lessons I Learned From Drafting My First Fiction Novel

Tips to consider if you’re interested in crafting a new story

Photo by Ben Karpinski on Unsplash

The idea first started over the summer.

I had just finished reading a book by a musician named Andrew Peterson where he talked about the creative process and why it was important for adults to retain the imaginations of their youth. He quoted two of my favorite authors, C.S. Lewis and Tolkien. That day in early June, in my daily journal, I wrote down a question that was starting to creep into the background of my brain:

What would it look like to try to write a fiction novel?

I’m an avid reader and have been writing for years now. I’ve written drafts of non-fiction books and worked in a myriad of the stages of publishing other people’s books, but I had never attempted to write my own fiction story.

Like most ideas, I sat on it and didn’t do anything about it. A few months later, a friend invited me to participate in a creative writing group focused on completing a specific writing project of our choice throughout the fall. I threw out that I’d write a series of short stories, still partially afraid to commit to the idea of an entire novel, and started working in my spare time.

As most writers can attest, once I got going, I kept going. I had a story I liked and characters that were starting to take shape. When I found myself thinking about the idea and the events about to unfold within the novel even when I wasn’t writing, that’s when I knew I was hooked.

By the end of October, I was sitting on nearly 60,000 words and a partial story. I had never really participated in National November Writing Month but thought this would be a good moment, considering I was already at work on a novel. Over the first 21 days of November, I wrote the remaining 75,000 words and finished the draft of my first fiction novel.

While writing, I learned so much about the ideas that go into getting a fiction novel down on paper. After combing back through the process and noting the speed bumps, stalls, and sticky spots, I’ve come up with nine core ideas to consider if you want to write a fiction novel as well.
3 Levels of Prototyping and When to Use Them
By: Andrew Acree
Tags: Mobile App Development, Mobile Apps, Prototyping, Design, UX

Prototypes are created to save time, communicate better and focus on how the product will actually work.

Prototypes are often created early on and used for user testing or done through code to understand the feasibility of a technology. Both are extremely important parts of the product development process. They help with the understanding of user flows, feeling out interactions, communicating the desired experience with the broader team, used to raise money and more.

“If a picture is worth a thousand words, a prototype is worth a thousand meetings” — IDEO

Level 1: Click Through Prototypes

The prototype shown above is composed of around 25 images that are linked together from invisible buttons that you can tap on. You can see that some screens slide in from the side or bottom and you can scroll with fixed navigation. These are basic functionalities that help mimic the feel of a truly mobile experience.

Many design programs such as Sketch, Figma, and XD allow you to build click through prototypes right in their apps. Invision is a popular online tool that allows you to create and share these prototypes with the world and there is even a tool called POP that allows you to make prototypes from drawings on paper.

Pros

— Very quick

— Easy to create

— Easily shared

— Free tools available

Cons

— Limited interactions

— Static images only

— Can’t access device inputs like camera and keyboard

— No logic

— No gestures

— Can become hard to maintain

Why create a click through prototype?

Even though click through prototypes have limitations, they still serve a vital role within the design process. I like to use click through prototypes early on in the design process to find answers to the early questions. I will often prototype out several takes of an experience to see how the content fits and feels on a mobile device or how I can break it up into steps or screens. These prototypes are great for exploring early concepts, user testing, getting buy in from team members, and communicating an overall strategy.

Even at this low fidelity state, a hands on experience is far easier to understand than written notes or several slides in pitch deck.

With click-through prototypes, it is common to do them atvarious levels of fidelity. Pen and paper all the way through high fidelity screens are both fine to use. The main purpose is to understand the flow and get a feel for how the mobile application connects all the parts.
How to Create Your First REST API With Deno
By: Marc Pàmpols
Tags: API, Typescript, Deno

Create an API With Deno

What better way to start playing with Deno than by creating our first REST API.

With this little tutorial, I am going to create a very simple array of movies and the five methods to list, search, create, update, and delete elements.

The first step is to create an index file, in this case app.ts . The first thing will be to load Oak, a middleware framework for Deno’s HTTP server. Oak is inspired by Koa, a middleware for Node.js. It seems that they continue with the pun. In the end, it helps us make writing APIs easier.

It is a fairly simple example that is practically self-explanatory. The server will listen on port 4000 and load the routes defined in the router.ts file that we will see right after. In the file ./api/controller.ts , I will put the definition of the functions for the different endpoints.

It’s time to define the routes in the router.ts file. Here we will also import the Oak router and the definitions that we will create in the controller.ts .

We instantiate a router and define the five commented routes:

getMovies — Returns all the movies

— Returns all the movies getMovie — Returns a movie given its ID

— Returns a movie given its ID createMovie — Creates a new movie

— Creates a new movie updateMovie — Updates an existing movie

— Updates an existing movie deleteMovie — Deletes a movie

Now it’s time to create the controller.ts file to define the API methods and the test database.

interface Movie {

id: string;

title: string;

rating: number;

}

Then, the movies array:

And now, the different methods, starting with the one that lists all the movies. It is really that simple:

/**

* Returns all the movies in database

*/

const getMovies = ({ response }: { response: any }) => {

response.body = movies;

};

Let’s go to the next one, the one in charge of returning a movie from an ID that we can pass as a parameter.

If we try to launch the request with Postman, we will see that it works.

It is the turn of the createMovie method to create a movie. The code is the following:

If we launch the test request, the server will reply with a message containing the recently created movie data.

If we then launch the request to return all the movies, we will see how the new one appears correctly.

It is the turn of the updateMovie method to update a movie. The code is:

We launch the corresponding PUT request with Postman, and we will get the correct response.

And finally, we only have the deleteMovie method that, in this case, deletes a movie from a given id. What I do is use the filter () to update the array, keeping all the movies with a different id than the one sent.

We try with Postman …

And effectively the movie with id = 1 just disappeared.

You can download all the source code for this example in this repository from my GitHub.
24 Most Controversial Books of All Time
By: Nicholas Politan
Tags: Writing, Free Speech, Infographic, Books

24 Most Controversial Books of All Time

Readers.com infographic details most challenged/banned books of all time

“What is freedom of expression? Without the freedom to offend, it ceases to exist.” Salman Rushdie, among many others, finds a book of his on this list of the 24 most controversial books of all time. There are a few conspicuous absentees (Joyce’s Ulysses, for example). Which books were you most surprised not to see?
Pictal Health — Purpose, Vision and Values
By: Katie Mccurdy
Tags: Healthcare, Startup, Design Process, Design

For the last few months I’ve been working on a new company to help patients organize and visualize their health stories — Pictal Health. I come from a human-centered design background, and in my past work I have often used design principles to provide creative constraints and help my team make good decisions over the course of a project. So in designing this new venture, I am trying to use similar principles and statements to speak clearly about what Pictal Health is trying to do, the impact we hope to make, and how we want to work.

Below is Pictal Health’s purpose, vision and values, which the book Story Driven helped me develop. While the specific products or services we create may change over time, I hope these core statements will remain fairly consistent. So far they have helped me get clear about what I’m working on, make better use of my time, and make better decisions; I hope they also help others understand what I’m up to.
7 Pieces of Terrible Writing Advice You Should Never Follow
By: Ayodeji Awosika
Tags: Creative Writing, Content Marketing, Writing, Marketing, Writing Tips

Why Should You Trust Me?

So far, I’ve said nothing unique. Every writing guru claims they have the secret sauce and every other guru doesn’t. What makes me different?

Here’s your first clue. I’m not going to promise any of this will work exactly the way I say it will. Good advice is nothing more than a suggestion. Nobody can promise you anything because there are too many variables in life.

Most terrible writing advice centers around some guarantee that if you do what you’re told, things will work out in some precise way.

Of course, luck is involved when it comes to writing. But, there are ways to increase your odds of building an audience and having blog posts go viral. I have a bag of tricks, but I don’t know exactly what will happen after I hit publish. No one does.

Anyone who’s promising you their “proven secrets to virality” is a charlatan.

I offer useful strategies that tend to pay off in the long term because long-time scales are more predictable.

I’m living proof of that. My blog posts have been read by millions, I’ve published two books with a third coming out this fall, and tens of thousands of people read my work on a monthly basis like clockwork.

But I’ve also been writing for five years.

Many, many, many people who write about writing edit out the part where they were stuck and frustrated and show you the “roadmap for success”, based on a starting point that’s not real — the point where they got traction instead of the very first time they wrote.

I won’t do that.

You’ll get unfiltered straight-to-the-point tips, the opposite of terrible writing advice. A great starting point for success is learning what not to do. Avoid these strategies at all costs.
5 Life Lessons from 5 Years at VaynerMedia
By: Steve Campbell
Tags: Entrepreneurship, Startup, Life

This week marked my 5th anniversary (or Vaynerversary, as we call it) at a company I love: VaynerMedia. It’s a feat only a handful (no pun intended) of others have achieved to date, and one in which I happen to be quite proud. It reminds me of so much, and all the experiences, lessons and amazing friendships that have come out of it are invaluable.

A photo I took of the VaynerMedia office in Tribeca (Oct, 2010)

As someone who’s about to turn 30 (sigh), 5 years shouldn’t be all that transformative, but time just doesn’t work that way here.

Here, you can hold 6 different job titles in 5 years. You can watch a 20 person team grow into a 500+ one. You can move to 4 separate offices. And you can open 3 new ones (with one on the way). Time isn’t supposed to work that way, right?

I came here in 2010 because I heard Gary V. wanted to build the biggest building in town, and I truly believed he (we) would. I still believe it now.

When you’re lucky enough to be a fly on the wall at a fast-paced company, you undoubtedly pick up some valuable insights and knowledge. In an effort to share some of mine, I’ve written out 5 key things I learned along the way.

These are in no particular order, as I think they’re all super important. You may recognize a few, since some stem from philosophical things I know GV’s spoken about publicly over the years. What can I say? The guy’s quotable…
What is Google Kubernetes Engine (GKE)?
By: Priyanka Vergadia
Tags: Kubernetes, Containers, Google Cloud Platform, Cloud Computing, Cloud

You can also checkout the explainer video where I walk through these concepts in detail

Explainer video on the topic — “What is Google Kubernetes Engine?”

Next steps

If you like this #GCPSketchnote then subscribe to my YouTube channel 👇 where I post a sketchnote on one topic every week!

Follow my website for downloads and prints👇

If you have thoughts or ideas on other topic that you might find helpful in this format, please drop them in comments below!
Data science-Create Tailored Algorithms
By: Ella William
Tags: Artificial Intelligence, Analytics, Data Science, Big Data

Blackcoffer artificial intelligence solutions are easy to use out-of-the-box and are custom tailored to each individual client’s needs. Our end-to-end AI enabled platforms speed time to delivery, save costs, reduce risk, and deliver optimized results to give you an immediate competitive advantage and bolster your bottom line.

AI innovation enabled by faster processors, Big Data and novel algorithms

AI is “an area of computer science that deals with giving machines the ability to seem like they have human intelligence”.

Read More
How to Make the Most out of James Clear’s Atomic Habits
Tags: Education, Learning, Habits, Productivity, Writing

3. Make It Simple

It’s totally normal, at the beginning of a habit, to find yourself looking ahead to where you might end up where you to succeed at sustaining a habit. It’s the same thing when you first walk into a gym.

The first time you catch yourself in the mirror at your gym, mid-repetition through your favorite exercise (deadlift of course), you can’t help yourself but really look into the reflection and see what you will look like if you stay the course of a good gym habit.

But often, these high-goals can be the bane of the habit. Especially at the start where the results are likely to take their time to show themselves to you. Instead of waiting in the mirror, try instead to focus on ways of proactively pushing for the habit-building process to take stock in your life.

A strong method of practicing this is by setting yourself a no excuses framework around the habit you are setting out. This means to step back and see the variables that could jeopardize the habit from taking place.

Whether that’s being an inconvenience, or too time-consuming, there will always be friction against change that you want to set in your days.

If we see going to the gym as the habit for this case, a friction point could be the place. How long would it take me to get there? And if taken further, how long am I going to stay there? Easily enough, you’ll be fast to come up with plenty of resistance points that will push you not to do the habit.

This is where simplifying the process of the habit can help take some decision fatigue off your head.

Now, simplifying a habit is not making it necessarily easier. Rather, it’s removing any unnecessary friction from stopping you from the process of performing the habit.

You do not rise to the level of your goals. You fall to the level of your systems — James Clear

Rather than looking to go to the same gym that your buddies go to, that so happens to lie on the complete opposite side of the town to where you live, look up a nearby gym spot to go after work (or before, if you dare). Take the inconvenience out of the equation and make the commute less of a burden on yourself and more of a point of action on your part to be more intentional with your time.

At the same time that you’ll be economizing on your time, you would be simplifying the choice to go workout to make it unavoidable to yourself.

In addition, by simplifying the habit of its atomic habits (you knew this was coming somewhere) the overall habit becomes far easier to hold onto and sustain.

James’s Habit Tip: Make the habit simple enough to execute that no friction point has enough in it to doubt yourself attending to the habit in the first place.
Lesser-known techniques for data exploration
By: Soham Ghosh
Tags: Exploratory Data Analysis, Machine Learning, Kaggle, Analytics, Data Science

Exploratory data analysis (EDA) is essentially the first step in the machine learning pipeline. There are many techniques used for EDA, such as:

Checking all columns: name, type, segments

Setting expectation of what the variable might mean and how it may affect the target — and testing the hypothesis

Analyzing the target variable

Using describe() function in Pandas to get a summary of all variables

function in Pandas to get a summary of all variables Checking skewness and kurtosis

Creating scatter plots ( pairplot() in Seaborn is probably the easiest way), distribution plots and box plots

in Seaborn is probably the easiest way), distribution plots and box plots Creating correlation matrix (heat-map); zoomed heat-map if required

Creating scatter plots between the most correlated variables; contemplating whether the correlation makes sense or not

Check for missing data (if a column has more than 15% of missing data, it is probably better to delete the column instead of replacing the missing values)

Checking for outliers (uni-variate as well as bi-variate)

Apart from these, here are some lesser-known tips for EDA:
Planet OS Data Challenge at ExpeditionHack NYC
By: Planet Os
Tags: Hackathon, NYC, Sustainability, Big Data, Nga

We’re thrilled to be part of the Expedition Hackathon NYC happening on November 12–13! This is your chance to map the future of sustainability with NGA, Mapbox, IBM Bluemix, Planet OS and others. The hackathon’s focus areas are Oceans, Forests, Conservation and Indigenous People.

To add some motivation to the hours of intense coding and hustling, we decided to put out tons of high-quality environmental data, data integration and computational infrastructure, and reward the best teams with some cool prizes.

All hackathon participants will get free, unlimited access to:

The prizes:

All teams that use our data tools will secure an unlimited free access to Planet OS data tools

data tools The team with the best solution will get special swag and surprises from Planet OS

The general Grand Prize of the hackathon is $3000 and a round trip to DC from NGA to meet NGA Executives.

We have already validated a few business ideas that the teams could work on. Stay tuned for updates! All the updates will be shared on this page so it would be wise to bookmark it. Contact us at aljash@planetos.com for further questions.

#PlanetOS #DataChallenge

About Planet OS:

Planet OS is the world’s leading provider of weather, environmental and geospatial data access and operational intelligence, based in Palo Alto, California. The company works with real-world industries — from energy, weather forecasting, agriculture, logistics to insurance — helping them become data-driven, mitigate risks and grow faster. The world’s second largest offshore wind farm runs on Planet OS Powerboard; and the company’s open data service, Datahub, provides access to thousands parameters of high-quality data collected by premier institutions around the world.
Are You the CEO of Your Writing Career?
By: Matthew Royse
Tags: Mindset, Entrepreneurship, Careers, Inspiration, Writing

Are You the CEO of Your Writing Career?

Take control of your writing job by acting as if you are a CEO

Photo by LinkedIn Sales Navigator on Unsplash

Are you the chief executive officer (CEO) of your writing career? To become better at writing, act as if you are the CEO of your writing business and look to grow it.

You should work with other writers, ask for help, listen, and make informed decisions. As the CEO of your writing career, you manage your writing like a business.

Here are five tips to help you become the CEO of your writing career, no matter if writing is your full-time job, a side hustle, or something you do for fun.