fabiochiu/medium-articles huggingface dataset:
How Teaching Kids CS Made Me a Better Programmer
By: Sara A. Metwalli
Tags: Programming, Software Engineering, Software Development, Computer Science, Education

How Teaching Kids CS Made Me a Better Programmer

If you can explain something to a 6-year-old, then you truly understand it

Photo by the author (made using Canva).

“The mediocre teacher tells. The good teacher explains. The superior teacher demonstrates. The great teacher inspires.“ — William Arthur Ward

If you want to really learn something, try teaching it to someone else because only then will you be sure that you fully understand it. That statement is entirely true. It’s even more accurate when you try to teach some relatively complex topics to six-, seven-, or eight-year-olds. Then, you don’t only need to understand the topic fully. You need to attempt to simplify it enough that kids will understand it without making it sound small and unimportant.

I have been teaching kids computer science for five years now and have been through more than 50 students. I can say for sure that my computer science and programming knowledge is now far superior to what it was five years ago. Teaching kids helped me grow as a person and improve my technical skills in a way I never thought about when I first started teaching.

Here are five ways that teaching CS to kids helped me improve as a programmer.
It Takes Luck To Succeed, Even When You’re Super-Talented
By: Barry Davret
Tags: Self Improvement, Life Lessons, Entrepreneurship, Leadership, Business

Luck. It’s that annoying success component the professional elite loathe talking about.

Love them or despise them, most superstars and billionaires worked hard to reach their status. But if they’re honest, they’ll acknowledge the role random chance played in their rise to the top.

If you dig into the backstory of most successful people, you’ll find instances of luck contributing to their big break.

You can be a great talent and produce groundbreaking work, but without a lucky break the world may never know. That’s what nearly happened when the song, Music Box Dancer by Frank Mills was released in 1974.

When Mills originally released Music Box Dancer, it bombed — not surprising for an unknown Canadian pianist without a commercial track record.

The song would have faded into the netherworld of forgotten music were it not for a string of improbable events four years after its release.

Mills signed with a new record company who put the song on the “B side” of a new single and sent it to easy listening radio stations across Canada.

By some quirk of luck, the record accidentally landed at a pop radio station. The program director dismissed the “A-side” of the record as unfitting for a pop station, but then the second stroke of fortune occurred. Something compelled the program manager to play the “B-side,” Music Box Dancer. He fell in love with the tune and put it on heavy rotation.

Five years after its initial release, the record surged in popularity, going gold in Canada and prompting a re-release in the U.S., where it reached #3 on the Billboard Hot 100. The song is now considered one of the iconic instrumentals of the 20th century, appearing in various movies and television shows.

That success would never have happened if the record hadn’t accidentally ended up at a pop radio station, and if the program manager hadn’t played the “B-side.” Mills wrote and performed a beautiful tune, but it took a few happy accidents before it became a hit.

Even the super-talented need a little help from the universe before hitting it big. But where does that leave the rest of us? Can we get lucky? Of course. It happens all the time. You can’t control it, plan it, or predict it, but you can attract it.
22 Things You Should Give Up if You Want to Be a Successful Developer
By: Dmitry Shvetsov
Tags: Software Development, Motivation, Self Improvement, Career Development, Programming

22 Things You Should Give Up if You Want to Be a Successful Developer

Discover what could be holding you back

Photo by ian dooley on Unsplash

When you become good at something, you can hit a wall in your development. No matter how hard you try, you feel like you can’t break through it. Pushing harder doesn’t pay off as much as before.

In this case, the solution might be not to add something but actually to remove something.

“It’s only by saying NO that you can concentrate on the things that are really important.” — Steve Jobs

Our habits and what we believe in determine 90% of our actions. To be a successful developer, we must become successful first in thoughts and then in actions.

By giving up certain habits and beliefs, you create space and time for the better.
How to Reverse Diabetes and Lose Belly Fat in 60 Days
By: Bob Wuest
Tags: Health, Diabetes, Keto, Weight Loss, Fasting

How to Reverse Diabetes and Lose Belly Fat in 60 Days

In less than two months, I dropped my HbA1c from 8.2% to 5.8% and lost 24 pounds by making targeted habit changes

Photo by Ehimetalor Akhere Unuabona on Unsplash

The title sounds like a bold claim, right? It’d be hard to believe it if I hadn’t done it myself. Here’s the story of how I did it — and how you can too.

On August 17, my doctor said one sentence that rocked my world: “You are a Type 2 diabetic.” Naturally, she prescribed diabetes-management drugs.

I was like, “No, thanks. Diabetes is a lifestyle condition. I’ll make lifestyle changes to reverse it.”

With the experience of someone who’s probably had this discussion more than a few times previously, she said, “That’s not likely.”

Hold my beer.

Less than a month later, on September 12, I had dropped 14 pounds and 1.5 inches of waistline. A second blood panel showed my triglycerides and LDL cholesterol had dropped to normal levels — for the first time in my life — and my HbA1c level had dropped — but still indicated diabetes. (It was at 8.0% against a normal max of 6.0%.)

On October 15, I had dropped another 10 pounds and two more inches of belly fat. My third blood panel showed that my HbA1c level had moved to 5.8% — within the normal range.

I had started at 194 pounds and was at 170 at that point. My target weight is 155, and so my journey continues. But here’s how I achieved these remarkable results within just 60 days.
Image classification (persons, animals, other) on raspberry pi from pi-camera (in live time) using custom model .h5 (output to terminal), using TensorFlow
By: Alex G.
Tags: Python, Image Classification, Raspberry Pi, TensorFlow, Colab

Note before you start:

So, let’s start :)

Hardware preparation:

Software preparation:

1. Create a neural network model to predict 3 classes: persons, animals, others.

I have already done it in the article below. So in this article, you do not need to do this.

2 Try to predict class from camera raspberry pi in live time with output to the terminal using Tensorflow Lite and custom model .h5 (which I trained and saved above).

For that, you need to run the next code:



pip3 install #install Tensorflow Litepip3 install https://github.com/google-coral/pycoral/releases/download/release-frogfish/tflite_runtime-2.5.0-cp37-cp37m-linux_armv7l.whl

git clone #clone repo with my codegit clone https://github.com/oleksandr-g-rock/classify_picamera_in_live_time_cusom_model.git #go to direcory

cd classify_picamera_in_live_time_cusom_model #copy h5 custom model

wget https://github.com/oleksandr-g-rock/create-image-classification-for-recognizing-persons-animals-others/raw/main/animall_person_other_v2_fine_tuned.h5 #run script

python3 classify_picamera_with_live_time_custom_model.py

3 You should see something like that.

Image classification (persons, animals, other) on raspberry pi from pi-camera (in live time) used custom model .h5 (output to terminal) (Photo,GIF by Author) https://github.com/oleksandr-g-rock/classify_picamera_in_live_time_cusom_model/blob/main/0_3yXD6SiSVVOvWpJ5.gif

Result:

In this article, we have created image classification (persons, animals, other) on raspberry pi from pi-camera (in live time) used custom model .h5 (output to terminal). The full code is located here.
Creating 3D animations with a python graphics engine.
By: Henry Haefliger
Tags: Python, 3d, Coding, Tkinter, Graphics

In our last article, we created a program in python to render a wireframe model of a 3D object. (if you have not already read it, I recommend having a look here https://medium.com/@henrynhaefliger/3d-graphics-with-the-python-standard-library-af3794d0cba). In this post we will take a look at improving that model and applying it to animations. As per the usual, you can also find the complete code for this project on my Github repository https://github.com/hnhaefliger/PyEngine3D.

To begin, we will be giving our models a more solid look, this means correctly rendering solid faces. To do this, we will calculate a new value for each triangle which will be called avgZ — the average Z coordinate of the points in each triangle. This will allow us to generate the triangles closer to the camera, last, meaning they will cover those behind. The code for the math is simple:

We then need to sort this new list by its 4th value, we can do this with a lambda function and the sorted() builtin:

We can now insert this into the render function of our Engine3D

We also need to update our createTriangle function so that the triangles are not transparent:

This will allow us to render an image like this:

As you can see, the model is no longer transparent. All that is missing now is an animation.

To do this, we will create a function called rotateY, with the parameter angle. This function will apply a formula to every point to rotate it around the Y axis by the given angle:

This function can be modified for any axis but will suit our purposes for now. For example if we run this code:

We will get an output like this:

Now that we can rotate the object, it is a matter of applying the tkinter.Tk.after() method:

This function tells the engine to clear the screen, rotate the model by 0.1 degrees, render the image and then repeat again after 1ms. When running this code, we will get a smooth animation of the shark rotating around the axis.
To My Beloved Brother
By: Tiffany Hsu
Tags: Siblings, Death, Family, Future, Healing

Photo by Annie Spratt on Unsplash

To my beloved brother,

It has been almost twelve years since I’ve last seen you. It has been almost twelve years since I’ve last heard your voice. It has been almost twelve years since I’ve had a sibling.

I miss you so much, and not a day goes by where I don’t think about you. There have been many milestones I have celebrated without you, and a part of me breaks every time I realize that you can’t be there with me. Even more so knowing how many more milestones I will celebrate without you.

I have so many questions that will never be answered. Whenever I ask myself these questions, all I’m left with is silence and emptiness. I still long for the relationship we once had, and I can’t help but wonder how our relationship would be like if you were still with us.

What happened twelve years ago left a deep wound in our family, but we have recovered, we are happy, and we have grown closer.

Dad, Uncle, and I mentioned you at my wedding when we each gave our speeches. I realize that, even though we have recovered, we will never forget you. You have left such an enormous impact on our family. Even though you aren’t here, I still want you to know that you are well-loved and we still cherish you.

With love,

Your Loving Sister
商业世界的设计
Tags: Design, Business

in In Fitness And In Health
Forwarding CloudWatch Logs to Logentries using CloudFormation
By: Callum Gardner
Tags: Logentries, AWS, Cloudwatch, Lambda, Cloudformation

Photo by Robert Larsson on Unsplash

The Logentries documentation describes how to setup CloudWatch Logs forwarding via the AWS Console. This process is tedious and time-consuming if you need to forward many log groups, so let’s save time by using CloudFormation!

Note: Logentries is now called Rapid7 InsightOps, but that’s a mouthful, so I’ll refer to the service by its former name.

High-level architecture

CloudWatch Logs can stream log data to other AWS services by attaching a subscription filter to a log group, with a filter pattern determining which logs are sent to downstream services (and which aren’t). We’ll use this feature to selectively stream data to a Lambda function which will upload the logs to Logentries.

This diagram depicts how log data moves from the originating AWS resource, through CloudWatch Logs to Lambda, and finally, Logentries.

Preparing the deployment package

Download the official Logentries Lambda function from GitHub. This is the code which will send our CloudWatch Logs to Logentries. Technically, this can be used as-is however, to reduce the size of the deployment package, we’ll remove the unneeded files.
Being Covid-19 Negative is The Best Christmas Present
By: Valerie Mercado
Tags: Covid 19, Health, Self, Christmas, Pandemic

We’re less than a week away from Christmas and it seems that despite the harrowing year we’ve all endured, people have finally lost their patience.

Stores are full, nobody is social distancing and businesses are defiantly open, with restaurants and bars offering indoor dining.

We are failing ourselves.

The number of covid cases in the U.S. has made it abundantly clear that we do not have this pandemic under control.

Hospitals are at capacity and then some. Healthcare workers are at their wit’s end, overworked, underpaid, and forced to work in unsafe conditions. Nurses, the canaries in the goldmine, have been screaming their lungs out all year about the reality of what is going on in hospitals, and they are ready to quit.

Beyond this pandemic our healthcare providers will continue to suffer from PTSD thanks to the horrors they’ve witnessed, the lives they couldn’t save.

We are not listening anymore.

The idea that because someone is so bored from quarantining that they should be allowed to just ignore the state of the world, the real suffering of many, and do whatever they want is ABSURD.

What justification would suffice? It is infuriating beyond words.

It’s far from over.

We are in the very thick of the worst of this pandemic. We haven’t yet seen the full extent of the November-Thanksgiving surge. Many of the people still in the hospital being kept alive by intubation will die, and they will be replaced shortly after by more people who will inevitably succumb to this terrible disease.

This is the reality we face.

Have hope, but be practical.

The vaccine is not a safety net. We are already starting to see shortages. There is no definite schedule as to when anyone outside of healthcare workers will receive it.

It is not going to be there to save you if you get sick in the next few months.



When in the history of the United States of America have you seen such a massive rollout of vaccines? It is going to be a bumpy process, made all the more difficult by those who attempt to sabotage the effort with their cries of FREEDOM! and illogical conspiracy theories.

It’s not the most wonderful time of the year

Do yourself and everyone you know a favor, stay home. Social distancing works. If you must go out, wear a mask and be extra careful. Wash your hands with actual soap and water, not just anti-bacterial gel, and call it a day.

Be mindful of others as you go about your day. And if you must see your family, get tested.
Google Tests Larger URL in SERPs
By: Jordan Silton
Tags: SEO, Google, Testing

A good testing strategy is an integral part of improving every website, and Google is always testing something new. Whether it is the color of the background behind AdWords ads, or a recent test to change the color of their black top navigation bar, Google continues to investigate which tweaks can help users find the results they are looking for as quickly as possible.

I just spotted what looks to be one of the current tests Google is performing. The green color remains the same at hex color #093, but the font size has increased from 13px to 16px.

Google has certainly tested other elements of the URL before, but this seems to be one of the first times they have increased the size of this critical page element. For example, Google does show enhanced URLs in organic results for those who markup their breadcrumbs with Schema.org or other rich snippets.

This could benefit larger brands with recognizable domain names, and I wonder how the increased URL size will impact CTR of paid AdWords ads compared to organic results.
B2B 行銷方法論（二）：為什麼不該做大量傳播？如何用 Inbound 集客式行銷的概念，達到產品廣告化？
By: 侯智薰 Raymond Ch Hou
Tags: Work, Product, Business, B2B, Marketing

Get this newsletter By signing up, you will create a Medium account if you don’t already have one. Review our Privacy Policy for more information about our privacy practices.

Check your inbox

Medium sent you an email at to complete your subscription.
What it’s Like to Audition at a Las Vegas Strip Club
By: Erin Taylor
Tags: Sexuality, Lifestyle, Sex Work, Work, Society

What it’s Like to Audition at a Las Vegas Strip Club

Have you ever wondered what a half-naked job interview looks like?

Photo by Alfonso Scarpa on Unsplash

When I was a stripper , I liked to relocate often and work at different strip clubs across the country. I lived and stripped in Colorada and California, back and forth, until I decided to spend a month in Barcelona. Then Boston. Then New York. Stripping allowed me the schedule, finances, and flexibility to do so. Thankfully, I had friends who were also strippers, meaning that my friend group consisted of able and adventurous individuals.

When one of my girlfriends invited me to tag along to work in Las Vegas for a week, I couldn’t wait.

Las Vegas was once the holy grail for strippers. I’m not sure if Sin City still holds its title, considering the current state of the world, but in the “before times,” traveling to Las Vegas to work at one of the strip clubs for a few nights (especially during a convention) translated to a ridiculous amount of money.

I was already two years into my career, and I was comfortable auditioning at different clubs across the country. But I knew Vegas was a completely different ball game.

In Las Vegas, the clubs were bigger. The music was louder. Club management was stricter on who they hired. Customers were rowdier and drunker and there were more of them. The other strippers (aka my competition) were way hotter in Vegas and there were three times as many girls working one night at a Vegas club as there were in a regular Denver club.

Las Vegas clubs were a regular strip club experience magnified by 1000.

It made sense that the audition process in Las Vegas was magnified too. This is what I learned about getting hired to strip in Vegas.
Life Among the Rooftop Pirates
By: A Singular Story
Tags: Fiction, Society, Humor, Cats, Netherlands

Looking up, I notice the plant baskets hanging from the balcony railings have gone and so has the furniture. I can still picture the chair Kitten used to jump on as a mid point to the square Everest from which he surveyed the word with twitching whiskers, fascinated. I would gaze at his small gray and white face, hoping something would catch his attention long enough.

So he wouldn’t jump back down just yet.

The first time I spotted Kitten, I was locked into a staring contest with Periscope, his housemate, an orange tabby whose favorite mode of observation was sticking his neck out through the railings as far as it’d go. One day, there seemed to be an extra pair of tiny ears floating next to him. That was my view.

My neighbors could survey my kingdom at leisure but I could only glimpse theirs from below.

During golden hour, one of us would sit by the window with our legs resting on the edge and Periscope would stare encouragingly at the human whose fingers moved excitedly across a shiny metal rectangle according to a mysterious melody.

The human would have a strange contraption around their head and smile a lot, their upper body animated, like that moment when you go from excited to asleep within a second because you’re still a kitten.

Periscope stared and, sometimes, the human stared back.

The long-haired one never seemed to blink, probably thanks to those small transparent eyeball covers that keep ocular globes extra moist. Cats know about your disposable contact lenses and may have eaten the odd one, which is why litter box gifts sometimes look at you.

Today, Kitten and Periscope moved out.

There were no goodbyes.
Fine-tune a non-English GPT-2 Model with Huggingface
By: Philipp Schmid
Tags: Data Science, AI, NLP, Machine Learning

Originally published at https://www.philschmid.de on September 6, 2020.

introduction

Unless you’re living under a rock, you probably have heard about OpenAI’s GPT-3 language model. You might also have seen all the crazy demos, where the model writes JSX , HTML code, or its capabilities in the area of zero-shot / few-shot learning. Simon O'Regan wrote an article with excellent demos and projects built on top of GPT-3.

A Downside of GPT-3 is its 175 billion parameters, which results in a model size of around 350GB. For comparison, the biggest implementation of the GPT-2 iteration has 1,5 billion parameters. This is less than 1/116 in size.

In fact, with close to 175B trainable parameters, GPT-3 is much bigger in terms of size in comparison to any other model else out there. Here is a comparison of the number of parameters of recent popular NLP models, GPT-3 clearly stands out.

This is all magnificent, but you do not need 175 billion parameters to get good results in text-generation .

There are already tutorials on how to fine-tune GPT-2. But a lot of them are obsolete or outdated. In this tutorial, we are going to use the transformers library by Huggingface in their newest version (3.1.0). We will use the new Trainer class and fine-tune our GPT-2 Model with German recipes from chefkoch.de.

You can find everything we are doing in this colab notebook.
How Minimalism Improves Fitness
By: Scott Mayer
Tags: Fitness, Health, Lifestyle, Life, Minimalism

How Minimalism Improves Fitness

Progress through simplicity

As any avid enthusiast understands, regular fitness training leads to a better, healthier you. While everyone’s definition of “better” may differ, one truism endures: it doesn’t have to be complicated, it doesn’t have to be excessive, it just has to be consistent.

The best way to ensure consistency? Perform physical activities you enjoy. You’re much more likely to stay on track if you’re engaged with what you’re doing. Playing volleyball on the beach with friends burns a lot of calories.

I’ve always loved Minimalism for its conceptual simplicity. How you can appreciate negative space as an art form, just as you would a sculpture or painting. How appreciating the value of things rather than quantity repels devils like materialism, greed and dishonesty. How decluttering your environment declutters your mind.

From this, freedom arises.

These are not novel ideas, but ideas often ignored. Staying on top of your fitness and adopting a more minimalist mindset are easy to understand, but not easy to adopt. This starts by identifying points of intersection between fundamental minimalist ideals and cornerstone fitness concepts.
How to get the next page on Beautiful Soup
Tags: Web Scraping, Python, Programming, Beautifulsoup, Coding

Recursive function — The trick to get the next page

Ok, here’s the trick to get the job done: Recursiveness.

We are going to create a “parse_page’ function. That function will fetch the 10 albums the page will have.

After the function it is done, it is going to call itself again, with the next page, to parse it, over and over again until we have everything.

Let me simplify it for you:

I hope it is clear: As we keep having a ‘next page’ to parse, we are going to call the same function again and again to fetch all the data. When there is no more, we stop. As simple as that.

Step 1: Create the function

Grab this code, create another function called ‘parse_page(url)’ and call that function at the last line.

The data object is going to be used in different places, take it out and put it after the search_url.

We took the main code and created a parse_page function, called it using the ‘search_url’ as parameter and took the ‘data’ object out so we can use it globally.

In case you are dizzy, here’s what your code should look like now:

Please check this line:

Now we are not fetching the ‘search_url’ (the first one) but the URL that we pass as an argument. This is very important.

Step 2: Add recursion

Run the code again. It should fetch the 10 first albums as always.

That’s why because we haven’t used recursion. Let’s write the code that will:

Get all the pagination links

From all the links, grab the last one

Check if the last one has a ‘Next’ text

If it has it, get the relative (partial) url

Build the next page url by adding base_url and the relative_url

Call parse_page again with the next page url

If doesn’t has the ‘Next’ text, just export the table and print it

Once we have fetched all the cd attributes (that’s it, after the ‘for cd in list_all_cd’ loop), add this line:

We are getting all the ‘list item’ (or ‘li’) elements inside the ‘unordered list’ with the ‘SearchBreadcrumbs’ class. That’s the pagination list.

Then, we go to the last one and get the text. Add this after the last code:

Now we check if ‘next_page_text’ has ‘Next’ as text. If it does, we take the partial url, we add it to the base to build the next_page_url. If it does not, there is no more pages, so we can create the file and print it.

That’s all we need. Run the code, and now you are getting dozens, if not hundreds of items!

Step 3: Fixing a small bug

But we can still improve the code. Add this 4 lines after parsing the page with Beautiful Soup:

Sometimes there is a ‘Next’ page when the numbers of albums are multiple of 10 (10, 20, 30, 40 and so on) but there is no album there. That makes the code to end without creating the file.

With this code, it is fixed.

Your coding is done! Congratulations!
Pickling Machine Learning Models
By: Aryan Deore
Tags: Machine Learning, Programming, Data Science, Python, Coding

How to Pickle

The pickle module has two methods.

pickle.dump()

The pickle.dump() method dumps the Python object in the pickle file. This creates a .pickle file in your current working directory ( pickle.dump(what_are_we_dumping, where_are_we_dumping_it) ):

In the code snippet above, we are creating an example_dict.pickle file from an example_dict dictionary. Statements 1 and 2 perform the same task of converting the dictionary into a pickle file. Using the with statement ensures that open file descriptors are closed automatically after the program execution leaves the context of the with statement. The 'wb' in the open statement means we are writing bytes to file.

pickle.load()

The pickle.load() method lets you use the .pickle file ( pickle.load(what_do_we_want_to_load) ) by loading it in the memory:
Love Them or Hate Them, Coding Exercises Are an Essential Part of Software Engineering Interviews
By: Tyler Hawkins
Tags: Programming, Interview, JavaScript, Startup, Coding Interview

Love Them or Hate Them, Coding Exercises Are an Essential Part of Software Engineering Interviews

You can learn a lot about someone’s proficiency by asking the right questions

Photo by ThisisEngineering RAEng on Unsplash.

When interviewing for a software engineering job, it’s common to be handed a dry erase marker and told to solve some arbitrary problem:

“Write a function that determines if the letters in a given string can be rearranged to form a palindrome.”

“Implement a memoization function.”

“How would you sort an array containing up to 100,000 randomly generated integers?”

As an interviewee, I used to hate whiteboard problems. The pressure of having to understand and solve a seemingly pointless or obscure problem in front of a stranger is enough to give anyone anxiety. I’ll never actually write a merge sort during my day-to-day responsibilities as a software engineer anyway, so what’s the point?

Now, as I sit on the other end of the conversation conducting the interviews, I’m beginning to see the merit of this format. The truth is, watching someone code for 30 minutes can tell you more about them than you would ever learn by asking them a hundred theoretical questions.

In practice, a mix of theoretical questions and coding exercises is important to include in the interview. For now, though, let’s examine why the whiteboard questions are so crucial.
Learning to Photograph: My First Few Shots
By: Justin Lyle
Tags: Music, Labs

in In Fitness And In Health
POMprompt # 19
By: Christina M. Ward
Tags: Poetry, Creativity, Pomprompt, This Happened To Me, Prompt

POMprompt

POMprompt # 19

Things that go ‘bump’ in the night

Y’all knew this one was coming. It’s Fall, October, the owls calling out in the night. That freaky Netflix show, The Haunting of Bly manor. Halloween on the horizon of a hilltop moonlit night. It’s all eerie. Eerie, indeed.

It’s time to embrace the creepy, the freaky, the weird things that go bump in the night…this one’s about fear.

When I was a child, lots of things frightened me. Being an anxious child who couldn’t sleep — even worse. I was wracked with nightmares, sleepwalking and sleep staring (whatever that is) and all of the nervous energy between. There were creepy things beneath my bed. Behind the closet door. Tapping on the window. I was afraid of a lot as a child, even going to school. The grocery store, parking lots, white vans, men with red hair — yeah, the list was long and I had a wild imagination.

There. That place beneath the bed in the dead of night — that’s where I want you to go. Feel that fear a bit. Whatever frightened you terribly as a child, or even now, is great material for poetic expression.

USE IT.

And write your poem. Use language that sets the mood. Let us feel the fear and mystery with you. Scare us too.

This time you won’t be alone.

Your poetry prompt for POMprompt #19 is Things that go ‘bump’ in the night Now, let’s see those super-creepy, scary, and mysterious poems!

Happy Halloween, Y’all!

Poetically yours,

Christina M. Ward, EIC of The POM
Fortune 500 Companies on Social Media in 2016 — Analysis
Tags: Social Media, Marketing, Infographics, Stock Market, Data Visualization

Fortune Magazine annually compiles a list of America’s largest corporations, aptly named the “Fortune 500” given their size and wealth.

In 2008, the University of Massachusetts Dartmouth Center for Marketing Research released one of the first studies on social media adoption among the F500 and has repeated that study every year since. Here are the highlights from the 2016 edition:

‘Infogram Insights’ offers a deeper look at relevant, newsworthy topics — visualized with Infogram. Every week we explore the data that is forever changing our world.

Follow Infogram on Medium and sign up for our weekly newsletter!
Python Web Crawler for Beginners: Parse Data from the Static Website
By: Sean Hs
Tags: Project Management, Médium, Python, Software Development, Web Crawler

Introduction

The web crawler is an efficient way to get the data if we don’t have REST APIs or libraries to retrieved data.

What we the most want to do with web crawlers is retrieving data in real-time. In a program of a web crawler, it usually sends a request to the target website as a flight company, EC website, or galleries of products. Then parse the response from the website and extract the information we expect.

We can present data in different ways as web pages, APIs, or an executable file. There are some cases I used web crawling to solve.

Case 1. Retrieve the most popular products from Yahoo

Yahoo by crawler is one of my case to retrieve popular products with the discount rate from Yahoo on 2017.

The web crawler may not work once engineers modify or refactor the target website. The way web crawlers to retrieve data is depending on the specific ID or class name. I think it may not work now.

Case 2. Retrieve data from Medium

On Daily Learning and my web resume, I implement a web crawler to retrieve articles from my Medium publication and show data on websites. The advantage to do that is we won’t have to save the data in the database and maintain the article on different sources.
How to Integrate Cognito with Social Sign-in
By: Ryan Bui
Tags: Cognito, Tutorial, AWS, Flutter, Front End Development

by Ryan Bui, Javascript Developer

If you want to manually integrate social sign-in using Cognito for your app, you’ve come to the right place! I couldn’t integrate social sign-in with what Cognito offers. This was because the front-end couldn’t integrate with Amplify or Cognito user-pools easily due to their use of Flutter. Flutter is currently too young to integrate with those services.

I also didn’t want to create an identity pool to grant temporary AWS credentials to the front-end. To solve this problem, we enabled an /auth endpoint that will signup/login to Cognito programmatically. The users will in turn get auth tokens.

The users must send their own social tokens from Google, Facebook, or Apple. The validation of those tokens will be done from the back-end.

Signup

What we need is to use the “CognitoIdentityServiceProvider” library and provide necessary credentials and the attributes that we want to assign to the user (email, name, etc). Those attributes have to be required when the pool is created (example below).

In return, we need the userID we just created.

Login

Upon login, we need to provide the username and password. If you want, you can login using the email only. when successful, we need the idToken that will be used later when authorizing user calls to our API.

Authorizing incoming requests

There are two ways to configure authorizers. If we do it manually, we have to open AWS console and head to API Gateway service and create an authorizer in our API.

Next step, give a name to the authorizer and select the Cognito user pool you want. Select a method where you want to use an authorizer and click on ‘Method Request’ to link this method to the authorizer.

First, in authorization, select the authorizer. For OAuth scopes, select “NONE” to expect ID Tokens. If you want to use access tokens with scopes, you can follow the documentation in AWS.

So that’s all you need to do for manual configuration! If you want to automate it with serverless, here’s how you can do it:

Here we just need to provide the ARN of the user pool. We don’t want to cache tokens, which is why we use resultTtlInSeconds: 0. As an identity source, put the path to the authorization header.

Now the consumer of this API just needs to pass the Cognito ID token in the authorization header.

A quick recap…

Cognito doesn’t integrate well with Flutter. We used the AWS SDK to signup and login. By doing so we can generate tokens that we will pass back to the client. Those tokens are used to validate against authorizers in the API gateway.

Special thanks to Serguey Arellano Martínez for co-authoring this article. Check out his tutorials on:

How to Configure AWS on Route 53 & How to Proxy an S3 Static Website
Where To Start as Web Developer?
Tags: JavaScript, Python, Front End Development, Web Development, CSS

For a beginner this is HUGE, now to the fun stuff. What you need to do next is start learning a programming language, there are a LOT of them out there but I strongly suggest JavaScript and that’s because this language specifically is the backbone of the web dev domains, learning it necessary because in a way or other you have to use it in your process. How to learn it? Simple just search for it on YouTube and don’t forget don’t learn too much. JavaScript is a High-Level language which means you can, it is close to English and you won’t find any problem understanding it. After that you have successfully become a front-end web dev. Make sure you work on personal projects to maintain your knowledge and to develop yourself.

Now a whole world is open for you, what I suggest is start learning about frameworks and libraries, what that mean is pre-programmed files that will make your life a lot easier, start by jQuery, it’s a JavaScript library and you will love it but don’t get used to it.

Next and IF YOU FEEL OK WORKING WITH ALL WHAT I HAVE MENTION ABOVE you can step it up and learn a framework such as VueJS, angular, react, amber and so on, I can’t really tell you what to learn you will need to decide by your self (Just google it and see what you like).

At this point you’re done so big up and let us start the REAL fun :)
Bobandii talks Te Reo, technology and tracksuits on new album
Tags: Bobandii, Running Handshake, Msc, Review, Music

Bobandii talks Te Reo, technology and tracksuits on new album

‘Running Handshake / B.L.U.E.’ proves that, given the right ingredients, New Zealand has the talent to step up to the digital production plate.

Coming to terms with your creative chaos can be a tough journey. Our minds can be consumed by thoughts, ideas, aspirations and self-consciousness. Many of us attempt to reign in our creativity to improve it. We build walls around our intuition and spend far too much time battling with those walls. On Running Handshake / B.L.U.E., Bobandii has taken a big step towards breaking down his creative barriers. The album is eclectic, genre-bending and emotionally unruly but somehow it bleeds together to build an immensely rewarding listening experience.

The album is packed with thematic threads:

Running Handshake / B.L.U.E. side-steps quickly between styles and moods. Tracks like Tracksuit and Falcon are energetic head boppers, whereas Free and Focus are atmospheric and emotional. What ties the album together so well are the themes. There is a lot to read into on the project, and I don’t want to constrain the ideas expressed into a single sentence, but they include Bobandii’s culture, his love-hate relationship with technology and his artistic journey. Sometimes these themes are expressed using three words or a whole verse. Sometimes they’re communicated in the mood of the track, and other times they crop up through cunning wordplay. If you have difficulty opening yourself up to a bit of an introspective journey, you may find it tricky to spot the threads, but they’re there.

International acclaim:

New Zealanders are incredibly talented in many genres. We have internationally cherished metal, pop, hip-hop, electronic and reggae artists. One area we don’t always meet an international standard at is experimentation. With so many digital production tools proliferating, it could be argued that New Zealand has yet to take advantage of them in our own way. While we can be proud of our traditional musical success, Bobandii provides New Zealand with a unique opportunity to make an international name for experimental digital audio production. Given the right attention and support, Bobandii has the potential to influence music in the same way as Flume, Sophie, Bon Iver, James Blake or alike. Running Handshake/ B.L.U.E. proves it’s only a matter of time.
How Home Videos Reminded Me of My Journey as a Film Artist
By: Yael Wolfe
Tags: This Happened To Me, Filmmaking, Artist, Creativity, Photography

“I cannot believe that I was doing all this stuff way back then,” I said to my mother after we had watched several of the family movie tapes. “It’s exactly what I’m doing right now with my work. It’s so validating to me to see that, but also so frustrating. Why didn’t I just follow my art?”

I have struggled with this question a lot in the past five years. Something happened to me the moment I turned 18 — I think I felt the pressure of the world push in on me. People kept telling me I would never make it as a novelist and I’d have to live in Hollywood to be a director (and having just left that region five years before, I wasn’t in a hurry to return).

Things were very different in the mid-90s. It was the days of dial-up internet, long before the gig economy was even a twinkle in the Muses’ eyes. The odds really were against you if you wanted to be an artist of any kind. There were only a few, very specific paths you could take, in very specific locations, and even then, you’d have to be the best of the best to have a chance to gain entrance into these exclusive careers.

It took me almost ten years to get my bachelor’s degree because I kept waffling between getting a practical degree in teaching or following my dreams and pursuing an MFA in writing or going to film school. I can’t even begin to tally up how much money I wasted during that time of indecision — especially if you add on the $25,000 MAT I eventually earned for that “practical” teaching career that I did not enjoy and had to leave by the age of 38.

Oh, if only I had followed Young Yael’s dreams. I look at her now, in those videos (well, I can’t see her from behind the camera, but I can look at her through her work), and I see the woman I am today. I see that same creative spirit. I see the same person who is looking to capture the little moments in life, the little details, and make people take notice of them. Make people realize that all those tiny things that we think are so insignificant are the things that really matter. The way the light falls. The little wildflower growing through the crack in the sidewalk. The song of a robin.

I wonder where I’d be now if I hadn’t taken the practical route, if I had skipped over the $25,000+ journey into teaching and followed my artist’s heart, instead.

Maybe it doesn’t matter. Maybe all roads would have led to this point.

Maybe the bigger point is just that I’ve always been this person. I’ve always been a storyteller. And just knowing that, having evidence of that, is such a comfort to me.

I am who I have always been.

© Yael Wolfe 2020
Gut the EPA and Courts, and We’ll End Up Like China
By: David Axe
Tags: Environment, Climate Change, Defiant Science

Gut the EPA and Courts, and We’ll End Up Like China

Without recourse, lacking enforcement, a Beijing activist got desperate

by DAVID AXE

Pres. Donald Trump has attacked the U.S. judicial system after it blocked his Muslim ban. At the same time, Trump’s top advisor Steve Bannon has vowed to “desconstruct the regulatory state.” Scott Pruitt, Trump’s corrupt Environmental Protection Agency head, has begun doing just that with regard to America’s ecological protections — pledging to cut back rules preventing air and water pollution.

The president’s assault on the courts and the EPA could have a devastating effect on Americans’ health and safety and the fates of countless other species. There’s a great, smoggy example of what happens in the absence of a strong judiciary and environmental enforcement — China, one of the dirtiest countries in the world.

Two-thirds of the world’s high-end steel-producers — together burning 800 million tons of coal per year — are located in a geographic ring surrounding Beijing. In all, China consumes half the world’s coal in what are, by world standards, highly inefficient plants. As a result, the air in Beijing typically registers around 100 micrograms of particulate per cubic meter, six times what the EPA considers safe. And Beijing isn’t even China’s dirtiest city.

China has no independent judicial branch and also possesses a tiny, weak environmental agency — the Ministry of Environmental Protection employs just 400 people in a country of 1.4 billion . The EPA, by contrast, employs nearly 15,000 people in a country of 300 million, and U.S. courts frequently intervene to block polluters. Unlike Americans, everyday Chinese people suffering from polluted air and water have few legal ways of fighting for cleaner air and water.

“Rules and regulations are there, enforcement is not,” Ma Jun, director of the Institute for Public and Environmental Affairs in Beijing, told DEFIANT during a visit to his Beijing office. What’s more, “in China, environmental litigation is quite difficult,” Ma added. The Chinese People’s Institute of Foreign Affairs, a Hong Kong-based non-profit organization, sponsored the visit.
Make a grid-based game with Unity: dev-log day 1
By: Taylor Coon
Tags: Coding, Development, Game Development, Unity, Programming

Grid-based Game: day 1

The first thing I’m going to do is generate a 2D grid in unity.

I barely know how to do anything in unity so after installing unity and starting a new 2D project with “placement-name” I googled how to do exactly what I wanted to do “How to generate a 2D grid in unity.”

I found this awesome tutorial.

The first thing I do when I find informative videos that solve my problem is to save them to a list. I have separate lists for every major project I work on so that I can reference them whenever I want.

Saving valuable tutorials is critical in this day and age because there is a ton of noise on the web that will misdirect you when you’re trying to learn technically difficult stuff like this.

Here are a couple of my favorite sources:

Sebastian Lague

Lost Relic Games

For this tutorial, I needed a picture of some kind to be my floor so I used gimp to make something absurdly simple to work as my floor. For those who don’t know, Gimp is basically photoshop except free and open source. I’ve used it a lot in the past so I prefer it.

Here is what I made :

In order to keep development moving, I’m going to start every solution with the dumbest, simplest solution possible and work on fine-tuning them later. This floor block is no exception.

This is also where I decided to make this a 32px game. Each grid, and therefore everything else in the game is going to fit inside of a 32-pixel box. This is kind of an aesthetic choice. I want it to feel kind of retro.

After following the tutorial I ended up with this code:

There’s nothing fancy going on here but there are some important fundamental concepts taught in this video. It teaches how to make a basic prefab and how to instantiate and reference game objects.

For those who are totally new, a gameObject is just that, an object in this game that has a lot of properties or other behaviors attached to it.

A prefab is like a resource that can be re-used and it has some extra stuff attached to it that gives it a little more functionality than just a simple png file.. We don’t need a view more intimate than that right now.

Here is what I’ve ended up with. A 30x30 grid of my floor tile.

In the next log. I’m going to get a character set up and have the camera follow him around.
Hide or Show Floating button on Scroll in Flutter
By: Nuwantha Fernando
Tags: Application Development, Flutter, Mobile App Developers, Development, Software Development

So let’s start,

Initialize required variables State object /class:

Call initState() method

This method calls at the beginning when the widget is created. The framework will call this method exactly once for each State object it creates. So the initState() is the best place to implement the behaviors which should occur before widget build. So in the initState() method, I implement handleScroll() function which is responsible for updating the isScrollingDown variable whenever the user scrolls the listview in the reverse(down) direction.

Call dispose() method

This method calls when the state object removed permanently which means the dispose() method will call by the framework when the state object will never build again. So when after calling the dispose() method, we are not having the ability to call setState() methods again. So this is the better place to remove the scroll Listener. Put the dispose() methods after the initState() method.

Create methods to hide and show the floating action button

Whenever the user scrolls forward (Up) we should have to hide the Floating button, so hideFloationButton() will calls. As well as whenever the user scrolls revers (down) we should have to show the Floating action button, so showFloationButton() will calls. Inside both methods, we are changing the value of the _show variable. Since the Floating action buttons visibility depends on the _show variable we are changing the value of it.

Implement the method to handle the scroll

Inside this function, we are adding the scroll listener, So that when the scroll occurs the function will trigger. Moreover, This is the main operation which fulfill our requirement. Which hide and show the floating action button in the scroll. When the user scroll reverse direction we are calling the hideFloationButton() so the floating action button will disappear. and also when the user scrolls forward we are calling the showFloationButton() , so the floating action button will appear.

Build the widget