fabiochiu/medium-articles huggingface dataset:
I Have Definitely Done the Pot Drug!
By: Rodney Uhler
Tags: Humor, Pot, Drugs, Marijuana, Satire

Photo by Thought Catalog on Unsplash

What’s that? Do I smoke pot?

Oh for sure, 100% I smoke the pot. I take the pot, I lick the pot, I eat the pot, all the ways to do the pot I have done. Except I was so high I barely remember them — you know what I mean? Picture this, I wake up on a Saturday and I see there is leftover party time around me and I just know, boy do I know, that pot has been done the night before. I have definitely done the pot.

What kind of pot do I like?

What kind, hmm, what kind, interesting but HARD question. Of course they’re all good. I like small pot sometimes when I’m feeling not as crazy, but often I’m doing the big pot! I find that some of the best pot is from warmer climates like, say, well, New Mexico? And then of course there is some great stuff from Arizona. “Desert pot,” but it could have street names you are familiar with, like Georgia O’Keef, Turquoise Toke. I think it’s made in a kiln which gives it a really smokey sort of flavor.

My favorite part about smoking pot?

Well doing drugs is my favorite part of smoking pot I’d say overall. Every time I take the pot I think back to our pot-forefathers — when pot was invented at Woodstock — and sort of raise my pot cigarette to them and their sense of rebellion. I love Cheech Guevara and everything he was fighting for in the revolution to legalize pot in Cuba. That’s what a lot of people don’t get. Sure it makes you feel crazy (like being drunk of alcohol but on pot drug) but really it’s so much more. Pot is culture, movies that are on VHS, politics, and sometimes very long songs.

Where do I get my pot from?

Do you want like an address? Are you a cop?! Hahaha, no I know you’re not a cop, but you know we gotta ask! Us pot-doers well, we are cautious when people ask us that. It’s something only fellow pot consumers like you and me know; which is why I almost won’t answer but I trust you so I will definitely answer this question. I mainly get it from people, not machines or on the internet, and I definitely never place phone orders. I value that personal interaction, and I find real people have the best sort of pot. Arizonian pot.

What do I do when I smoke?

Oh boy, what don’t I do, amiright?! Specifically? Well there was this one time where I took so much pot. Like inches of the stuff. I was with my friend Ashton. We always have the best time together and often because we are under the influence of pot. After a crazy night we misplaced our car and so we had to spend the entire next day asking people where our car was trying to find it and boy did we get into some antics. But we laughed and laughed about it. Then we became violently ill as is customary when you take the most pot.

Am I excited for 4–20?

Hell yes! It’s my favorite holiday. The day Jesus died from a pot overdose.
A checklist for first time mobile app developers
By: Don Restarone
Tags: Mobile, Android, React Native, Programming, iOS

2. Have a Mechanism to Set Your Server API URL Dynamically

Apple App Store Connect and Google Play will thoroughly test and exercise your app and its features. If your app uses authentication, you will have to provide them with a preexisting account. If there are paid features that have subscription-/usage-based billing, it would make a lot of sense for you to be able to switch your back end from production to test/development during the time the app is in for review. This has helped me avoid actual charges on my credit cards while Apple and Google have been exercising my apps.

Beyond the scope of avoiding credit card charges during testing, this is a good practice in general so you can freely change system level variables without having to deploy a new version of your app. I make sure that variables like public API keys and URLs are always fetched from the outside and never hard-coded to the app.

My code-level strategy is as follows (the example here is a React Native app): When the app first loads, it will fetch system variables such as the website URL and API URL from my web server (this needs to be hard-coded, so use a service that you know is reliable and not subject to change — I used the web app that powers my company website).

Once the variables are set to Redux, they are accessible from anywhere within the component stack.

On the server side, I have a controller that returns the data like so (Ruby on Rails). There is also a simple health check in place so we can show an error to the user on the mobile app if the web server is down.
Is Surface Learning To Blame For How We Talk About Race?
By: James Woods
Tags: Education, Education Reform, Learning, BlackLivesMatter, Race

We saw this past summer as company after company released statements about standing with #BLM and how they will move forward with equity and programs that encourage greater diversity. Most of the statements and actions taken were surface-level. My friend told me that her principal sent her a link to look at to understand more about diversity initiatives at the school. Such actions do a disservice to the students.

These surface-level approaches are taught at school. By creating curriculums that concentrate on assessment requirements, people end up approaching all matters that way in life. Everything must be cookie cutter because it was taught that way to students throughout their time in school. It is not until advanced high school courses or college that most people are given a much deeper dive into topics that seemed simple enough in earlier grades.

Surface learning discourages critical thinking skills. These skills are necessary for the 21st century as the internet is in the palm of our hands. You can confirm your bias within seconds if you really wanted to. There is going to be an article, or two, that confirms your assumption that racism no longer exists. Critical thinking is what stops you from believing such falsities.
Summary of BXY’s Token Distribution Schedule.
Tags: Beaxy, Cryptocurrency, Blockchain

Introduction.

Dear Beaxy community,

The purpose of this article is to summarize BXY's token distribution schedule. The article will be updated if there are any changes to the schedule below.

With that being said, all information contained herein is current and reflects the current schedule. The numbers below reflect approximations rounded to the nearest whole number to allow for small variances in distribution.

Token Allocation Summary.

Below is a summary of the token allocation defined prior to platform launch.

Image 1: Token allocation summary.

Note: Almost a third of the supply is vested over a long-term period in either Beaxy’s reserves or under Founder’s agreements.

Distribution Schedule.

Overview.

The chart below represents an overview of the total number of BXY tokens that have been distributed and the number of BXY tokens to be distributed.

Image 2: Overview.

The success of our marketing, bounty and deposit bonus programs meant that we exceeded the allotment of tokens that were earmarked for the aforementioned campaigns, and as such funds were allocated from the reserves to meet our contractual obligations with competition payouts.

Distribution Schedule by Month.

Image 3: Table representing a breakdown of the token distribution by month.

Image 4: A graph of BXY distribution by month.

The table and graph above represents the number of BXY scheduled for distribution between December 2019 and June 2020.

Supply.

As of publishing, the circulating supply of BXY currently stands at approximately 41% of the total supply, with the total supply standing at 500,000,000 BXY as created at the token generation event.
CoinMarketCap update
By: Ubcoin. Cryptocurrency Reimagined
Tags: Ubc News, Coinmarketcap, Ubcoin

🔥 UBC updated the circulating supply on CoinMarketCap and gained 1.000 steps in the ranking from 1.800 to 829!

We are constantly working hard on our project and intend to get better every day.
The Happiest Man I’ve Ever Known
By: Jerry Bowles
Tags: Short Story

For many years, my favorite New York neighbor was a debonair, white-haired old Frenchman named Armand Chene. Monsieur Chene died quickly and apparently painlessly a few years back when his great heart simply gave out at the age of 99. He called out to his wife, fell to the floor, and by the time she got there he had lost consciousness. It was an exit strategy that neatly matched the way he lived — no whining, no big regrets, no neediness, no fuss.

Unlike some of my neighbors, Armand was not famous or fabulously wealthy but he was something much more important than that–he was a genuinely happy man, grateful to have lived nearly a century so amazingly free of the debilitating diseases that reduce most of us to pain and bitterness and confusion in our later years. The mischievous glint of the professional boulevardier that sparkled in his eyes to the end brought a smile to everyone he encountered.

He was born in Paris at a time when men with horses came around in the evening to light the gas lamps. Before he was 10-years-old, his mother died when a careless doctor left a scalpel inside after an operation. His father was a vagabond who had disappeared. Too proud to beg, without a coat or underwear, he survived by doing odd jobs for fellow residents of a poor Jewish quarter of Paris and sleeping in basements.

Once my wife and I ran into him on the street and he had a tear in his eye and he told us he was thinking of his earliest memory: his mother, standing naked, bathed in gaslight at a neighborhood communal bath and “she was so beautiful.” No one loved women more. He used to say to his son “When you touch your mother, touch her with a rose.”

He moved to America in the 1920s but never lost his Maurice Chevalier accent. Perhaps his enduring optimism came from the realization that he had missed the century’s two biggest killers — World Wars I and II — simply by being too young for the first, too old for the latter. Maybe, it was because he waited until after he turned 50 to get married and get a job, having spent many of his earlier years cruising the Cote d’Azur in an MG. The handsome, rakish-looking man that beams back from his old photographs suggests that his permanent smile was well-earned on the beach on Cannes and in the gambling halls of Monaco. Despite its unpromising beginning, he had led a charmed life and he knew it.

Whatever his secret was, he was never less than “formidable” when asked. His mind was clear and he walked upright with the gait of a 70-year-old. Once I saw him stumble going out the door and he wheeled in mock fury and said “Ooo push me?”

I saw him for the last time on the morning of the day before he died. He looked especially fit, had a new haircut, a boater hat and seersucker jacket. His pants were new and, of course, he was wearing a tie, although he was just going to the grocery store across the street. I told him how great he looked and he said: “Well, you know. It’s getting harder and harder.” It was the closest thing to a complaint I ever heard him make.

We should all go so gently into the great dark night.
Create a Infinite Color Flipper in JavaScript
By: Nabendu Biswas
Tags: Javascript Projects, Javascript Programming, Javascript Development, Javascript Dom, Javascript Tips

In a previous post, i had created a Simple color flipper in JavaScript. In that project, we had used an array of colors.

In this project we are going to randomly generate the hex color code from the available 16 million colors(that’s why infinite).

We are going to do this project in codepen. So, open any codepen and put this basic html and css. In the html, we have a container class wrapping a h2 and button.

In the CSS, we are placing the main at the center. Also, adding basic styles for h2 and color.
Getting started with Quarkus and InfluxDB to ingest sensor data from a Particle device — Part 1
By: Claudio Montanari
Tags: Particle, Quarkus, Tutorial, Influxdb, Ngrok

Deciding which programming language and framework to use for your next backend application is not trivial. There are a lot of variables involved in the process. What is the learning curve of a new framework? What is the end goal of what you are about to develop? A prototype? A full-scale production web server? What is the computing infrastructure that you will be using for the deployment? These are just a few examples, but there could be a lot more to explore before making the final decision.

This tutorial is composed of two articles. In the first one, we are going to explore the Quarkus framework and we will deploy a backend application that ingests and processes data coming from a Particle controller. In the second one, we will see how to store the data received in an Influx database.

As Red Hat states:

“Quarkus is an open source, Kubernetes-native JavaTM framework tailored for GraalVM and OpenJDK HotSpot. It offers a full-stack framework, using top Java libraries and standards. With Quarkus, Java can be a leading platform in Kubernetes and serverless environments, while offering developers a unified reactive and imperative programming model to address a wider range of distributed application architectures.”

Characteristics like fast startup time and low memory footprint are just some of the reasons why we love Quarkus at Wepo and why, in brief, Quarkus can be a good choice for most applications that need a scalable backend that runs on a cloud infrastructure.

So, let’s get started and remember that you can find all the code for this tutorial on GitHub (the code for part 1 of the tutorial can be found in the branch part-1).

Setup a new Quarkus project

We will use Quarkus quick-start and download a project template. First of all, we need to set a Group and Artifact name of our choice and leave Maven as Build tool.

We can use Quarkus quick-start also to add the extensions that we will be using:
Docker Compose
By: Sarthak Srivastava
Tags: WordPress, Docker Compose, Containers, Docker, MySQL

We can create a container and run it using Dockerfile. We can even run multiple container in separate ports using two Dockefiles in multiple terminals.

But when you want to create more than one container for your application, you have to create several Docker files. This adds on the load of maintaining them and is also quite time-consuming.

This blog is continuation with my previous blog where i showed How to Install WordPress on Docker using MySQL Backend

This problem is solved by Docker Compose. Docker compose is a tool which is used for multi-container applications in a single host.

For example in my previous blog I have to run two container : first wordpress container and second mysql container as backend.

We can run multi containers as services in the single host with the help of docker-compose.yaml.

Docker Swarm extends the concept of manage multiple containers deployed across multiple node docker cluster.

Installation

Run this command to download the current stable release of Docker Compose in linux :

curl -L "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

2. Apply executable permissions to the binary:

sudo chmod +x /usr/local/bin/docker-compose

3. Check the version using

docker-compose version

Creating Your First Docker-Compose File

Create a new folder named mycompose All Docker Compose files are YAML files. You can create one using the vim editor inside the mycompose folder

vim docker-compose.yaml

Docker compose file contains : services,volume and networks and is used to start all services

3. Close the editor using ESC then :wq! command

4. Then execute

docker-compose up

5. To start and stop the container use

docker-compose stop

docker-compose start

6. To run docker-compose in deattached mode use

docker-compose up -d

7. Check the ip using ifconfig and go to the browser and type the ip with the port number 8081

192.168.43.42:8081

Conclusion

So, docker-compose is a great tool to run multi-container applications. This example is only one of the use cases.
AidCoin showcases the first-ever entirely blockchain-based charitable campaign in Africa!
Tags: Fundraising, Nonprofit, Blockchain, Charity, Bitcoin

Why choosing a charity in Africa?

It’s no surprise that for our first showcase of a completely fiat-free charitable campaign we chose Alice for Children.

As we mentioned before in our post, the seemingly under-developed Kenya is quite advanced in terms of digital payment adoption. While the “normal” banking system does a poor job in slums, applications such as M-Pesa, which doesn’t even require internet connection for sending money, or BitPesa, which works in a similar way but also allows using Bitcoins, help the locals out. This sets the stage for a faster AidCoin adoption (and crypto adoption in general) by local businesses and individuals.

That’s why even with AIDChain’s requirement of paying to charity’s partners in crypto as is Alice for Children didn’t have a hard time: a service provider who’d accept crypto payments was soon found and the campaign got up and running!

About the campaign: Alice Italian Food Academy

The main goal of this specific fundraising campaign was to buy a power generator that would ensure uninterruptible energy supply for the facilities used at Alice for Children’s Italian Food Academy in Nairobi, Kenya.
A Beautiful Way to Calculate π: Buffon’s Needle Problem
Tags: Probability, Education, Mathematics, Teaching, Nature

When children had no internet, they liked to play tossing a coin on the floor and seeing the coin cross a line or not. After a while, a guy, a French philosopher Georges-Louis Leclerc, was good at math to determine whether the coin would cross a line. He just wanted to generalize that game. Remarkable idea!

Georges Louis Leclerc, Comte de Buffon | Wikimedia

First, he started dropping a needle on a lined sheet of paper and determining the probability of the needle crossing one of the lines on the paper. Then he tried his experiment with many needles many times. And he did it. He got a remarkable result. The probability was directly related to the never-ending number pi value because two times the number of needles he dropped divided by the number of needles crossing a line was almost equal to pi all the time. So he made a formula:

P: the probability | n: the number of needles | c: the number of needles crossing a line. Then; P = 2n/c

For instance, get some toothpicks and then draw some lines on cardboard. But the gaps between lines should be equal, and the width between the gaps should be equal to the length of a toothpick. When you are ready, you can throw your toothpicks on the cardboard randomly. Sometimes when you drop the toothpick, it will cut a line, and sometimes it falls between lines.

Assume that you throw 100 toothpicks. When you count the number of toothpicks that cross the lines, you will probably see that 60–65 needles will cross the lines. If you apply the formula and do the calculation, you get (100 x 2)/63 = 3.17 or about 64%. I know it is not perfect because of the number of toothpicks. With more toothpicks, you can get better accuracy.

An Italian mathematician Mario Lazzarini threw needles almost 4000 times to perform this experiment 117 years ago. And he got pi with perfect accuracy. He got the first six decimal places of pi.

Even though there are no circles, it is still a beautiful approximation of pi. I know it seems awkward, and this geometrical probability blows your mind, but it is entirely true. It’s stunningly accurate.

If you don’t believe me, you can throw thousands of toothpicks and test the experiment yourself, or you can check the A Monte Carlo simulation below to see. The gif shows the pi estimation with a different number of toothpicks.

Throwing 1000 needles to estimate pi. Source: reddit

Today, we call this experiment “Buffon’s Needle problem” to honor that French philosopher Georges-Louis Leclerc. And math people use integral geometry to explain this relation. You can find the proof below.
Object’s tricky parts in JavaScript
By: Nikhil Karkra
Tags: Objects, Freecodecamp, LinkedIn, Js, JavaScript

A JavaScript object is a collection of properties where each property has a name and a value, similar to Hash, Map, or Dictionary in other languages.

The name of a property can be any string, including an empty string.

The value can be any value, such as a string, Boolean, number, and null, but it cannot be undefined.

The object’s properties can be defined even after you start using the object.

let’s look at how we can create objects in JavaScript.

Object Creation using new keyword

2. Object creation using Object literals

In this way we usually use curly braces’{}’.

In this we use dot operator or brackets to add keys.

** Note — we use brackets notation when our Object keys are dynamic and may contains spaces

var obj = {}

obj.first Name = 'Nikhil' // throw an error but with brackets notation it will work obj['first Name']='Nikhil'

console.log(obj) // {first Name: "Nikhil"}

3. Object creation using inline Object literals

Issue 1- Object Mutation with one level Objects

When we copy one object into another it get copy by reference

In below example you can see obj4 get copied into obj5 and when we update the obj5 firstName it’s get updated in obj4 also.

Solution 1 — Object.assign

We can solve the above issue by using Object.assign({},sourceObj)

Object.assign create a new object and copy the source object into it.

** Note Object.assign({},sourceObj) only useful for shallow copy

Issue 2 — Object Mutation with Nested level Objects

Object.assign solve the issue if we have one level object.

If we have nested object like obj4 contain another object address as shown below another reference issue occur’s.

Solution 2— Deep Copy
Covesting Trading Competition and Bug Bounty Are Complete!
By: Covesting Pr
Tags: Cryptocurrency, Investing, Trading, Bitcoin, Covesting

Dear community,

We are proud to announce that our Trading Competition and Bug Bounty have come to an end. We extend our sincerest thanks to all who participated. Through the two programs, Covesting was able to extensively test our know-your-customer (KYC) process, received many great suggestions and bug reports, and gained extremely valuable trading activity data that will help us continue to improve our platform ahead of the upcoming soft launch.

Trading Competition Results

The battle was tough and hard-fought as the competition faced challenging, sideways market conditions, However, using the right trading strategies and asset selections, our traders saw much success, proving that copy-trading can be a helpful tool for growing investment portfolios. In fact, the #1 trader in the competition earned an extremely impressive 58% ROI in just four weeks despite the ongoing market downtrend.

Winners were determined by the USD value of their portfolio. Here is the list of our Trading Competition winners:
Brunch, American Liberalism, and Delusions of Mediocrity
By: Matthew Barad
Tags: Politics, Liberalism, Protest, History, Economics

Want to end injustice? Drop brunch and fight.

On January 21st of 2017, I had just gotten home from a day of marching at the Boston Women’s March and was checking social media. Hundreds of pictures were being shared — of marches, of hats, and of protest signs. Among them was one sign which encapsulated the failures of American liberalism shockingly well. It read: “If Hillary won, we’d be at brunch.”

More recently, this line of thinking has had a resurgence — but this time in support of Joe Biden:

The argument in both the sign and the tweet are the same: Donald Trump is uniquely bad and therefore requires that we pay special attention to his politics and his actions. Other Presidents would not be as bad, and therefore, we could stop paying attention to politics if they were elected — The problems with that logic are as obvious as they are severe.

Put simply: America has always been a very bad place for a very large number of people.

To the children in cages when Obama was President, Hillary’s election would have been little comfort. To the activists in the street today, the ascension of the racist 1994 crime bill’s author to the highest office in the world would not be cause for celebration — Biden has recently promised to crack down even more severely on those protesting police brutality. In the face of those realities, it would seem that only detached white liberals could expect to have their lives automatically improved by a Biden or Clinton Presidency — not because either would necessarily have better policies, but because to wealthy white Americans, Trump is a psychological trauma that attacks their idealistic view of America, rather than a threat to them or theirs.

Undocumented immigrants, trans people in states that deny them rights, black victims of police oppression, essential workers being forced to risk their lives to serve us coffee — oppressed peoples — cannot ever escape politics. Whether Obama or Clinton or Biden or Sanders or Trump is President, their lives are under constant threat by America’s systems of power.

If your landlord can kick you out on a whim, if your boss can deport you, if your parents can throw you on the street, or if your ability to survive is conditioned on the generosity of strangers, you can never go to brunch, you can never escape the realities of politics, and your salvation is something which will take more than elections to win.

So when liberals, even the most well-intentioned and caring liberals, tell us that they would be at brunch if Trump lost in 2016, they are admitting that their stated commitment to human dignity is barely skin deep.
W8 NFL Simulated Scores & Odds
By: John Culver
Tags: Alternative Investments, Monte Carlo Simulation, NFL, Sports Betting, Lean Startup

How to interpret the ISW’s New Look Tables

p (w) % = Implied win probability per team based on the results stemming from 10,000 monte carlo simulated games (e.g. NYJ won 5,156 / 10,000 simulated games → NYJ’s p(W) % = 51.6%).

Avg. Score = The average (projected) score per team derived from 10,000 simulated games.

Spread = The average point differential between the two average scores.

Avg. Total vs. Market = The average total is equal to the the sum of each team’s average projected scores. The market is what ESPN’s quoted total (‘over /under’) is.

Market Spread = The current line or spread per ESPN’s NFL Daily Lines.

p (cover) % = Estimated likelihood that each team covers the spread given the market spread based on our 10k monte carlo simulations.

p (cover total) % = The likelihood that the total (i.e. the sum of each team’s final scores) goes over ‘O:’ or under ‘U:’ the market total based on 10k monte carlo simulations.

The ISW’s Power Ratings

The ISW employs its proprietary power rating system each NFL season beginning with preseason power ratings that are adjusted weekly according to team performance against the spread (ATS) as well as margin of victory throughout the season.
BRISBANE
By: Policy Innovation Hub
Tags: Australian Politics, Policy, Government, Elections, Politics

The seat of Brisbane covers the gentrified inner Brisbane suburbs of Ashgrove, Kelvin Grove, New Farm and north to Ascot and Hamilton. The seat was won by the LNP in 2010 with Trevor Evans becoming the local member at the 2016 election. Prior to 2010, Brisbane was a long term Labor seat, however demographic change is not on the ALPs side as wealthy baby boomers continue to move into the seat to take advantage of services and cultural amenity.

Information taken from Hansard via They Vote for You

The LNP’s Evans won the seat comfortably in 2016 with, after allocation of preferences, 56 per cent of the vole compared to the ALPs 44 per cent. At the last election, the Greens gained 19.4 per cent of the vote and their candidate this time is Andrew Bartlett, a former Senator with a high profile. Despite the large margin for the LNP, Brisbane has been identified as a priority seat for the ALP who have sent through a range of senior Shadow Ministers including the leader Bill Shorten. The ALP candidate Paul Newberry is an expert in the transition to renewable energy and could appeal to disaffected Liberal moderates who want to see action on climate change. On paper, the seat should be safe LNP but the ALPs continued interest indicate they believe there is potential to harvest disaffected Liberal voters.

Full list of candidates for seat of Brisbane
Looking forward at 2019: Sony
By: Thales Costa
Tags: Videogames, Gaming, PlayStation, Sony, 2019

Beyond these three games, Sony have some other announced titles but their release schedule are still a mystery. Ghost of Tsushima, The Last of Us Part II and Death Stranding…These are the games that could make 2019 huge for the company. Beyond these heavy hitters, there’s also the looming next generation of consoles. Could this be the year for any of these?

For more than 10 years, Sucker Punch Productions worked on the Infamous games. Their last big title, Infamous Second Son, came out on the PS4 and it was a leading game in the consoles’ first year. Now, the studio is working on their new IP, Ghost of Tsushima. It’s open world and you play as a samurai. The game was announced in October 2017 and later had a gameplay demo at E3 2018. Despite being no indication of a 2019 release, it could happen. Sony said in an interview that they didn’t announce this game too soon, which means that releasing it this year would make sense, 2 years after the reveal.

Back at Playstation Experience 2016 (PSX), The Last of Us Part II was revealed. It’s next appearance was almost a year later, during Paris Games Week, and it was only at E3 2018 that gameplay was finally shown. Naughty Dog, the studio behind it, have a pedigree on making exceptional games like the Uncharted series and The Last of Us, so it’s safe to assume that this new one will be a hit. Neil Druckmann, director of the game, tweeted in December a picture of a mocap session. This could mean that there’s still a long way to go in development, putting it at a mid to late 2020 release.

We’ll definitely hear more about the game in 2019

The last announced game without a release date is Death Stranding. In 2015 after a split with Konami, Kojima Productions became independent and stablished a partnership with Sony. Lead by Hideo Kojima, the studio began working on this new game using the Decima engine (created at Guerrilla Studios, same used for Horizon Zero Dawn). It was unveiled to the public at E3 2016 and it had a few trailers since then. It’s hard to grasp how much of the game is done, all we know is that Kojima has been showing the first couple hours of gameplay to other developers recently. It seems to be a big project in scale and Sony would give it as much time as needed, so a 2019 release doesn’t seem possible.

Last but not least, a big factor in this new year is the next generation of consoles. Microsoft already mentioned that they are working on it, so it could happen in 2019. Sony dominated this generation and they probably don’t want to stay behind on the next, so an announcement this year to a release in 2020 seems plausible. All we know is that the next Playstation is a reality and it’s coming soon, opening the possibility for these 3 games mentioned to be also released on next-gen.
Scottsdale, meet Nuro.
By: Nuro Team
Tags: Self Driving Cars, Robotics, Retail Technology, On Demand Delivery, Grocery Shopping

In June, we announced our partnership with Kroger to redefine the grocery customer experience for Americans by piloting an on-road, fully autonomous delivery service. Today, we’re excited to announce the launch of that service on August 16th, at Fry’s Food in Scottsdale, Arizona.

Scottsdale stood out as a perfect community for our pilot. Mayor Lane and the city of Scottsdale have welcomed our vision for transforming local commerce. The weather and topography of the area are favorable for testing. Lastly, Kroger, through its Fry’s Food division, is deeply embedded in the community.

Beginning today, our self-driving fleet of Priuses will be on the road delivering groceries to Fry’s customers in the 85257 zip code. Simply go to Frysfood.com or the Fry’s Food mobile app to shop for groceries and select a delivery window. Since self-driving delivery vehicles are a new concept for many, this phase of the pilot is very important. We will learn how customers interact with the vehicles in real-time, and be focused on identifying further improvement opportunities.

Learning motivated us to begin the pilot with our self-driving Prius fleet. It shares many software and hardware systems with our custom vehicle, the R1. So while we complete the R1’s final certification and testing, the Priuses will be completing deliveries and helping us improve the overall service.

We’re proud of this first step toward self-driving vehicle delivery, and we‘re already hard at work on what’s next. The R1 will be rolling into Scottsdale this fall — transforming local commerce one bag of groceries at a time.

Learn more about the Arizona pilot.
Start Betting on Yourself
By: Tochukwu Okoro E.
Tags: Mindset, Philosophy, Growth, Self Improvement, Life

I wrote this title, and all I thought about was how much content there is to write around this topic. Betting on yourself cuts across investing in knowledge, setting goals, believing you can achieve them, and much more.

I’ll use myself as an example when I set a goal, It might seem difficult at the initial moment, but I stop worrying about it and let God do the rest.

And each time I feel like worrying, I keep my cool and believe that everything will work out.

And I’ll be honest with you; I can’t count how many times this thing has happened to me. Where I’ll be worried about hitting a goal, and when I take my mind off of it and just get lost in the grind, I reach the goal. It has happened several times and is still happening.
Dura Mater
By: Elizabeth Helmich
Tags: Thesceneandheard, Love, Mindfulness, Acceptance, Poetry

Saying it to yourself doesn’t make you a believer,

any more than Church saves someone who won’t

be birthed clean out of black water.

I remind myself of this contraband

while hollowing my shell, blowing air into

vacant chambers.

Hoisting myself up once more

on tangible threads that sliver off parts of me

I can’t carry names of anymore.

Cartilage shifts, giving off a delicate ahhh…

A rescued echo from the ocean,

liberation of a dormant pearl.

The ways we shape a body yields

soreness to a stale mind, lessons of acceptance

pierce even the toughest membrane.

Ears cock up, determined to heed

this art of letting go, and repeatedly being zipped

back up into a dreamless requiem.

Sounds travels through the same red square,

cognizant only of an endless checkered board.

I learned Chess instead,

Preferring logic over chance,

statistics over dumb luck.

Except odds don’t pick sides, they spin

And sometimes an anomaly is exactly that.

A blip in predictability, a wrinkle

on a botoxed forehead, the stubborn twitching

Of cardiac fibers once they’ve left their host.

This electricity that jolts us alive, Franken beats —

drive us both to insanity

Seeking our maker, and the dank realization

that comes after sweat’s been burnt off

and we’re reduced to pliant cinders

Of smoldering breath. Left to pray at the altar,

and forgive the places our scars remain.

What we’ve done with our bodies

When it wasn’t Sunday, and the music

lulled us to where no one was watching.

The clouds continue to part and particles

Smash every window of closed space,

letting air in where strength comes from softness.

Fulfillment glistens down my body to kiss my toes.

Laughing tears drench the impossible

thoughts, scores of faded purple

shadows shuffle off and disappear.

Unseen beauty evaporates contained

restraint, marking my face in afterthoughts

that dwell far beneath skin.
ECMA Standards and Javascript
By: Kunal Thorat
Tags: Ecmascript, JavaScript

In my conversations with other Software Engineers, I felt that there was a general sense of confusion about the distinction between ECMA, Javascript, ES6, TypeScript, etc. I feel it is important to know what these terms mean for every Software Engineer.

First off, what is ECMA? ECMA is a standards organization for information and communications systems. ECMA has been responsible for standardization for languages and frameworks like C#, Javascript, etc. Since this post is only limited to Javascript, let’s dive into it.

ECMAScript = ES:

ECMAScript is a standard for scripting languages started by Netscape.

Javascript and some other languages like JScript and ActionScript are based on the ECMAScript standard.

JavaScript = JS:

JavaScript is an implementation of the ECMAScript Standard.

The core features of Javascript are based on the ECMAScript standard, but Javascript also has other additional features that are not in the ECMA specifications.

JavaScript was submitted to ECMA for standardization but due to trademark issues with the name Javascript the standard became called ECMAScript.

Every browser has a JavaScript interpreter.

ES5 = ECMAScript 5:

Released in December 2009 (v5) and updated in 2011 (v5.1), ES5 is a version of the ECMAScript and is the JavaScript we use in the browser today.

ES5 does not require a build step (transpilers) to transform it into something that browsers can understand and run.

Features like ‘strict mode’ and ‘accessors’ were introduced in this version.

ES6 = ECMAScript 6 = ES2015 = ECMAScript 2015:

Released in June 2015, ES2015 is the latest version of the ECMAScript. ES6 is the next iteration of JavaScript, but is not supported completely in today’s browsers.

This update adds significant new syntax for writing complex applications, including classes and modules. Other features that were introduced are for/of loops, arrow functions, etc.

In order for ES6 code to run in browsers, there is an additional step of transpiling into ES5 code by one of the available transpilers. I have described one just below.

BabelJS:

BabelJS is the most popular transpiler that transforms ES6 Javascript code to ES5 code making it possible to use ES6 features.

BabelJS takes ES2015 file and transforms it into ES5 file.

Babel is built out of plugins and is very configurable.

TypeScript and CoffeeScript:

TypeScript and CoffeeScript add syntactic sugar on top of ES5 and then are transpiled into ES5 compliant JavaScript.

I hope these points will help you understand the differences between different versions of the ECMA standard and help use the features of Javascript better.
The Sharing Economy is Extremely Good
By: Matt Lubchansky
Tags: Tech, Clas, Sharing Economy

Sign up for Taking Stock of COVID: New comics from The Nib

By The Nib

New comics from Matt Lubchansky, Keith Knight, and Niccolo Pizarro. Plus How Seniors Are Living With COVID-19. Take a look
Has Cancel Culture Gone Too Far?
By: Monica Harris
Tags: Equality, White Supremacy, White Privilege, Cancel Culture, Race

Last week, the National Museum of African American History and Culture (NMAAHC) removed a portion of a new exhibit called “Talking About Race,” citing concerns that it hadn’t contributed to “the productive discussion” the curators had hoped. The move came after mounting pressure and criticism from conservatives.

But if we were living in less insane times, the outcry wouldn’t have been partisan. In a sane world, any reasonable person, regardless of political persuasion, would have seen this exhibit for what it clearly was: racist.

Yet that didn’t happen because we’re living in crazy town now. Anything goes, and almost no one notices.

“Talking About Race” had a noble goal: to provide tools to advance open, honest and respectful “conversations” about race. But a graphic illustration embedded within it — “Aspects & Assumptions of Whiteness & White Culture in the United States” — undermined this effort.

The chart was based on a book written by Judy H.Katz in 1978 entitled “White Awareness: Handbook for Anti-Racism Training.” In her book, Katz argued that because white people dominate the power structure, all Americans (including non-whites) have internalized certain beliefs and practices. This, of course, makes sense.

But here’s where it gets bizarre.

The chart highlighted 14 categories of “white dominant culture” that have been “normalized” over time. According to “Aspects & Assumptions,” even characteristics and behavior such as hard work, punctuality, and a desire for progress make non-whites feel “inferior or abnormal.” Why? Because they’re oppressive. Again, why? Because these are apparently “white” standards that people of color simply can’t meet.

The irony is that if a KKK Grand Wizard (or Donald Trump) claimed these as “white” characteristics, we all know what would happen. They would be vilified as racists. The blowback would be epic. The media would spin the story 24/7 for days, and maybe weeks.

Yet when those teaching anti-racism suggest that non-white Americans can’t be expected to meet standards of conduct common to most people of all colors across the world, the silence is deafening.

What happened last week should be a wake up call to anyone committed to eliminating systemic racism in the United States. We’re on a slippery slope. We’re living in a time when anyone or anything that’s deemed offensive can be ejected or terminated. That means that if characteristics demonstrated by most functional adults can now be considered symbols of “whiteness,” they could also be on the chopping block at some point. They could be “cancelled.”

If that happens, these well-intentioned crusaders may end up sabotaging the quest for equality.
Refactoring With Spring Cloud Services
By: Rajaram Gurumurthi
Tags: Oauth2, Zuul, Spring Cloud, Cucumber, Netflix Eureka

A step-by-step guide to breaking up a monolith

Spring Cloud Services to the rescue

This article demonstrates the use of Spring Cloud Services to break up a large monolithic application into a set of smaller micro-services that can change and grow with user needs.

The companion code is available in github repo: mpdroid/whoppr. Pre-requisites are Jdk1.8, MongoDB and Gradle 6+. IDE is optional.

What is a Monolith?

Much has been written about monoliths about why they are not ideal, and how they should be dismantled. The perspective here is that any application that violates the Single Responsibility Principle is a monolith.

Monolithic applications, like overloaded pieces in chess, serve multiple stakeholders with potentially conflicting needs. Over time, they accumulate indispensable but quirky features that are costly to change.

In contrast, a service with a single purpose, can fulfill it well. It has clearly defined scope, shorter change cycles and can be easily canned when no longer relevant.

Assuming Spring-Boot as the application framework, this article proposes a simple set of steps to do this refactoring, accelerated by use of Spring Cloud services.

Note that breaking up web applications falls into the realm of micro-frontends and remains off-topic for this article.

Spring Cloud Services

Spring Cloud provides a useful set of libraries to manage distributed services. While targeted at cloud environments, they are equally relevant for in-premises, non-cloud deployments as well. However it is a rather wide umbrella spanning several best-in-class and often competing frameworks, each having their own releases and dependencies.

Spring Word Cloud (created on http://www.wordclouds.com)

So we apply the principle of Occam’s Razor to choose exactly what we need to solve our particular problem and nothing more. The primary concern here is that refactored services should work together cohesively and securely to meet end-user needs. The following constitute a necessary and sufficient set of tools to address this primary concern.

Spring Cloud Netflix Zuul (for API Gateway)

Spring Cloud Netflix Eureka (for registering and discovering services)

Spring Cloud OpenFeign (new age remote method invocation)

Spring Cloud Contract (for testing service-to-service interactions)

Spring Cloud Security

We also leverage Cucumber for end-to-end testing.
Death and the Rig Veda
By: Peter Sahota
Tags: Sanskrit, Hinduism, Rigveda, Afterlife, Cremation

King Dasharatha cremates Shravana and his aged Parents — Wikimedia Commons (B.N.Goswamy/ Gazal world)

Ideas about some kind of afterlife are commonly found in all religions. In the Bhagavad Gītā, Krishna explains that those who resort to him do not get ‘punarjanma’ (rebirth in this world). A precursor to ‘punarjanma’ is the idea of ‘punarmṛtyu’ or ‘re-death’, found in texts such as the Bṛhadāraṇyaka Upanishad. However, the Rig Veda presents its own distinctive ideas about a possible afterlife, in Maṇḍala 10 Sūktas 14 to 18.

What follows is my own translation of the the first eight verses of Rig Veda Maṇḍala 10 Sūkta 16 by Ṛṣi Damana Yāmāyana, which occur in the middle of this stretch. It would appear that these eight verses are spoken by the priest during the actual cremation of the dead body, and are addressed either to Agni (1,2,4,5,8) or the dead person himself (3,6,7 — in bold).

In making this translation, I again consulted the translations by Professors Stephanie Jamison and Joel Brereton and by Prof. Ralph Griffith, both of which I found helpful. Agni and Jātavedas are both names of fire, considered as a deity. The term ‘asunīti’ which I left untranslated seems to refer to the afterlife realm. Parts of verse five are rather unclear.

O Agni, do not burn this one; do not burn him up;

Do not destroy his skin; do not destroy his body.

O Jātavedas, when you would set him alight,

Then send him on to the ancestors.

O Jātavedas, when he is alight,

Then entrust this one to the ancestors.

When he goes to asunīti,

Then he will do the will of the gods.

Let your eye go to the sun, your breath to the wind.

Go to heaven and earth according to dharma.

Or go to the waters if you want.

With your body, dwell among the herbs.

The ram is your share; consume it with your heat.

Consume it with your burn; consume it with your flame.

O Jātavedas, with these which are your benevolent forms,

Carry this one to the virtuous world.

O Agni, send back to the ancestors

He who, offered to you, moves by his inherent power.

Entering into life, let him get the remainder;

Let him go across with his body, O Jātavedas.

That of yours which the black bird struck,

Or the ant, the snake, or the wild beast,

Let all-consuming Agni make it healthy,

And Soma which the Brahmins have obtained.

Wrap yourself up in leather as protection against Agni.

Keep it away with all kinds of fats.

So that the fierce one does not violently burn you up

With its flames clasped around you

O Agni, do not overturn this soma-spoon [camasa].

It is dear to the gods and to the Soma-lovers

This is the soma-spoon which the gods drink from.

This soma-spoon exhilarates the immortal gods.