fabiochiu/medium-articles huggingface dataset:
The Battle Of The Adrenals
Tags: Adrenal Fatigue, Frightened Rabbit, Self Love, Lyrics, Autoimmune Disease

How I make myself laugh 2019 edition. This Was Good Day!

Today I feel vampiric energy,

Past time stored in my memory,

It’s running red through my veins, back hurts,

What’s worse,

the stomach feels like it could burst, but my heart is still working, beating,

And I feel this vampiric energy,

It’s making my teeth swing, That I need to sing,

Today - swollen belly, cheeks, and feet 2019 edition.

As my arms hurt,

it could be worse,

my legs aren’t exactly cursed,

but the feet are swollen,

and these cheeks are puffy,

so I am trying to be like Buffy,

and feel this vampiric energy,

Am I being buried in the dirt?

Noway, I am not six feet under, As my heart still works, it beats,

I have no-fear to wonder, it beats for you

Do you feel this vampiric energy too?

Good Arms Vs Bad Arms

So I lay here,

And visualize,

An energetic field,

Around my body,

As I am a shield for both of us,

Stuck together as a broad piece metal,

pushing that pedal,

The sheild is held by straps,

A handle on each side,

That I use as protection,

When there are blows to the adrenals,

I can protect myself, I can protect you,

my heart is still working, it beats,

Good Memory. Ringing In The New Year. Solo Trip 2017/18

Sometimes I ache,

it can be a cruel pain,

But see I use this shield, for protection,

Against the battle of the adrenals,

Fighting, wanting to kill them with my bare hands

To protect not just me but you too,

If I could only just sit up and put my feet on the white sands,

On that beach, where past time is stored in my memory,

And feel that vampiric energy, That runs red through my veins,

As my heart is still working, beating,

Beating for you …

( If I couldn’t write or play guitar, today I would just be sick laying here. Instead one must try to do things that are productive but also conducive to their limitations. Accept them. Even though today I’m swollen everywhere and that is how I look, I don’t and won’t always look that way, I’m sick some days and I accept that. But also tell myself I’m beautiful no matter what. Music Therapy.) I hope this could help you feel better in some way, Namaste
Dragon Quest 1 Nintendo Switch Review
By: Alex Rowe
Tags: Gaming, Review, Videogames, Nintendo Switch, Nintendo

You can attack with your current weapon, use a selection of 8 different spells you’ll unlock through play, or try to flee. Combat plays out through hidden dice rolls with results presented in text at the bottom of the screen.

If you like modern games about watching numbers go up, you’ll be right at home here.

This Switch version has the most in common with the mobile versions released a few years ago. That means it has some quality of life improvements, like the sparkles mentioned earlier and streamlined menus.

However, it also has the slightly higher difficulty featured previously in the Super Famicom and Game Boy remakes. The boss monsters have more health and higher resistances than the monsters in the NES original, and you’ll probably have to reach experience level 20 or 21 out of the cap of 30 before you can fight every monster in the game successfully.

Dragon Quest really is all about pleasant, gentle grinding through endless combat.

It’s the ultimate chill JRPG, with no true “difficulty” aside from spending your time powering up.

If you die, you’ll get teleported back to the castle and lose half your current gold, but that’s it.

Well, that and the King will gently chastise you and tell you to heal at an inn.

If you devote enough time to it, and don’t get frustrated with the maze-like dungeons or weird item fetch quest, you’ll eventually finish the game.

The English conversion of the original game was famous for its over-use of goofy theatrical “Old English” text, and this port doubles down on that decision, though the writing is a little cleaner and easier to quickly scroll through.

Visually, the game shares the new artwork of the mobile versions, but it’s reformatted for a 16:9 ratio, and to look good on both the Switch’s handheld screen and a TV without any scaling issues.

The font choices are nice and big regardless of your screen choice.

The colors and designs are clear and bold, and I think the artwork is right in line with the style of the original art, successfully evoking old pixel art while also having much more detail than older games.

Some folks don’t like the changed visuals, and I can understand that.

I think it would have been awesome if this port included the option to use the older graphics from earlier releases, just so players could see what those looked like.

The underlying game is exactly the same, so I don’t think this would have been tremendously hard to implement, but this is clearly a low budget port of the mobile game reformatted for these resolutions.

And perhaps users wouldn’t have liked the 4:3 ratio of the original visuals, I don’t know.

The music also comes from that recent mobile version, and presents nicely synthesized re-creations of the original tracks. They sound great, and that’s good…because you’ll be hearing the same music tracks over and over for 8 hours.
An Introduction to Flutter Version Manager (FVM)
By: Jelena Jovanoski
Tags: Programming, Flutter, Mobile, Android Development, Ios Development

DISCOVER FLUTTER — WEEK #9

Photo by Aziz Acharki on Unsplash.

Flutter Version Manager (or FVM) is the easiest way to manage Flutter SDK versions on your machine. So I could say it is a local development game-changer like NVM is.

This means that we can define a specific Flutter version for each project. Additionally, they get cached, so we don’t have to go through the full installation process all the time.

The following is an explanation of the installation and setup process of the FVM on a Linux operating system.
6 Ways to Stop Comparing Yourself to Other, Clearly Superior Moms
By: Lindsay Hameroff
Tags: Satire, Life Lessons, Parenting, Lists, Humor

Photo by Jessica Rockowitz on Unsplash

Comparing ourselves to others is a recipe for unhappiness, even if you are the best mom in the world. And let’s face it…you aren’t even in the running. Try these six strategies to curb feelings of inadequacy before #momguilt takes over your life.
The Complete Guide to State Management in SwiftUI
By: Mohammad Azam
Tags: Programming, Swift Programming, iOS, Swiftui, iOS App Development

@Observable and @Observed

Most apps fetch their data from an outside source, mainly using the JSON Web API. Once the data is downloaded it is populated in a DTO object and later mapped to the view models and, finally, displayed on the screen.

One common issue with consuming asynchronous requests is to how to notify the user interface that data has been downloaded and the view must refresh to display the fresh data. SwiftUI solves this problem by introducing Observable and Observed property wrappers.

Before jumping into Observable and Observed we must find a way to perform an async request to fetch data. For the sake of simplicity, we’re going to make a fake request and get a list of posts in an async manner.

In the code above you can see that the Webservice simply waits for two seconds and then sends achardcoded list of posts back to the user in the completion handler.

The Webservice class is used by PostListViewModel to perform the request. The implementation of PostListViewModel is shown below:

The PostListViewModel represents the data, which will be displayed on the post listing screen. The most important thing to notice is the use of the ObservableObject protocol which allows the class to publish events. The posts property is decorated with @Published property wrapper, which means it acts like a publisher. Anytime a value is assigned to the posts property, it publishes an event indicating that it has been changed.

Finally, the PostListView uses the PostListViewModel to fetch and display the posts in a view as implemented below:

If you run the application, PostListView will going use PostListViewModel and populate the list of posts in a List view. The MVVM design pattern along with the ability to publish and notify the changes makes syncing the view with the view model much easier.

At present we have only discussed local state, which represents the state maintained and available to a particular view. If you need to change the state of the view from another view, you can pass it as an argument and use the @Binding property wrapper. This works well if you’re passing the state between only a few views, but quickly becomes a hassle when several views are involved.

In the next section, we’ll look at global state, which can be accessed from any SwiftUI view.
Setting Up SPI in nRF52xx
By: Sanskar Biswal
Tags: Nrf52, Microcontrollers, Tutorial, Communication, Programming

Fig.1 SPI in nRF52

Prerequisites

This is tutorial is not intended to be a guide for learning C language or about the Nordic SDK platform. It’s primary target is to provide developers a concise guide about integrating peripheral modules and features into active applications.

If you are a beginner, I would recommend you look into an nRF52 Project Setup guide like this one.

Another easy way to get started with coding, without bothering with all basic stuff like files and driver inclusion, check out this Code Generation Tool

nrf52 Code Generator: https://vicara.co/nrf52-code-generator

SPI

Serial Peripheral Interface is a communication protocol for sending and receiving data between many devices in a serial and synchronous method. It can be a 4 channel or a 3-channel method depending on the users choice of configuration.

The most popular one is 3-channel, with MOSI, MISO and SCK. MOSI (Master Out Slave In), writes data to a slave device. MISO (Master In Slave Out) reads data from slave device. SCK is the clock signal which synchronizes communication between devices. Devices like IMU, Motor Control Units and Sensor interfaces use SPI.

There may also be the IRQ pin for interrupt and CS/SS for Chip Enable on SPI devices.

Fig.2 SPI Usage.

Implementing SPI in nRF52832

In the following section, I will provide a guide as it has been tested in the nRF52832 Dev Kit. However, the same structure will remain common across all nRF52 devices.

Including correct Headers

Fig.3 Project Explorer in SES

Include the SPI Driver files. This file should be titled, nrf_drv_spi.c It is at SDK/integration/nrfx/legacy folder.

Update sdk_config.h File

SPI_ENABLED has to be set to set to 1.

In main.c File

Header File

#include "nrf_drv_spi.h"

Define SPI Instance

static const nrf_drv_spi_t spi = NRF_DRV_SPI_INSTANCE(1);

Define Callback Function

static void spi_event_handler(nrf_drv_spi_evt_t const * p_event,

void * p_context)

{

//Callback which is triggered when a SPI transfer occcurs

}

Initialize SPI Instance

static void spi_init(void)

{

nrf_drv_spi_config_t spi_config = NRF_DRV_SPI_DEFAULT_CONFIG;

spi_config.frequency = NRF_DRV_SPI_FREQ_4M;

spi_config.mode = NRF_DRV_SPI_MODE_0;

spi_config.ss_pin = 7;

spi_config.miso_pin = 4;

spi_config.mosi_pin = 5;

spi_config.sck_pin = 6;

spi_config.orc = 0xFF;

spi_config.bit_order = NRF_DRV_SPI_BIT_ORDER_MSB_FIRST;

spi_config.irq_priority = APP_IRQ_PRIORITY_LOW;



APP_ERROR_CHECK(nrf_drv_spi_init(&spi, &spi_config, spi_event_handler, NULL));

}

Note: The number of pins linked to each instance of this peripheral is always 4.

Add spi_init() to main()

spi_init();

Conclusion

With the above steps anyone can easily get started with incorporating SPI.

NOTE

There is another easier method to initialize and auto-generate code for nRF52. This tool, will handle all library additions and code generations for a variety of peripherals like SPI, I2C, UART etc.
DAOstack某些简单术语的解释
By: Stratis Karadakis
Tags: Chinese, Decentralization, Blockchain, Governance, Ethereum

DAOstack is designed to catalyze the future of collaboration. It's a platform for decentralized governance that enables collectives to self-organize around shared goals or values, easily and efficiently.

Follow
The Pier
By: Dan Leicht
Tags: Relationships, Microfiction, Short Story, Love, Fiction

They watched the sunset from the end of the pier, kicking their feet out over the water as they’d done on their first date. Jake looked to his wife Ellie, and smirked, enamored with her beauty.

“All these years,” she said, “and I still can’t believe how beautiful it is.”
How long should I wait before I get a tattoo?
By: Eden Rohatensky
Tags: Life, Tattoo, Ronresponds, Body, Advice

How long should I wait before I get a tattoo?

Ron Responds #9

QHow long should I want a specific tattoo before I get it? I’m afraid I will get it and then think of something better.

— Smol Guy

I try to limit the amount that I talk about myself in these columns, but in this particular case I might be the worst person to ask this question.

You see, I didn’t have any tattoos until the beginning of 2016 when I finally decided I was ready. I did my research, purchased the supplies, and gave myself my very first tattoo. Again, I had never been tattooed nor had I ever tattooed anyone, but I decided it was a good idea. I gave myself a freehand stick and poke of a semicolon on my right arm within a week of deciding that I wanted it, and thus began my tattoo journey.

The second tattoo I got was because of its comedic value. I messaged my friend Jaye, a very talented artist, and asked her to tattoo the words “Star Wars” in my arm pit. I didn’t want it to be the official logo. I wanted it to be as silly as possible. Honestly, to this day, it’s probably my favourite tattoo.

Sarah and I with our matching curly braces, done by Jaye

I started getting into matching tattoos with my friends. I was always told not to get matching tattoos. My mom has a Minnie Mouse tattoo that matches an ex-boyfriend’s Mickey, and you’d think I’d have learned my lesson. But no, I soon got a pair of curly braces on the back of my neck, and my best friend Sarah got a matching set on her arm. Three of my eight tattoos are matching tattoos that I share with people I care about. While writing this response, I asked my mom if she regrets her Minnie tattoo, because the dude with the Mickey was an asshole: and she doesn’t. It marks a time in her life that she doesn’t want to forget, and the lessons that she learned coming out of that time.

My bandmate Jon and I with our matching 2 sweet tattoos

Like my mom’s Minnie Mouse tattoo, all of my tattoos mark a specific, meaningful, time in my life. In this day and age, it’s not really that big of a deal to get a tattoo removed or covered up. So far, as silly as many of my tattoos are I regret none, and am fond of all of them.

That being said, everyone is different. I had wanted tattoos since I was 16, but it took me until I was 24 to actually start getting them. Once I got my first, I realized that it wasn’t that big of a deal. To some, though, they are. I know some people who wait ten years with a tattoo in mind.

The worry of “thinking of something better” is natural, but keep in mind that your first tattoo is unlikely to cover your entire body. You’ve got plenty of canvas to work with.

Do your research, find an artist you like, and if it feels good, make an appointment (don’t tattoo yourself, my semicolon is faded and blown out already). If your hesitation outweighs your desire to get the tattoo — it might not be the time just yet. Feel it out, and I’m sure you’ll be happy with whatever decision you come to.

With love,

Ron
How to Remove Array Duplicates in ES6
By: Samantha Ming
Tags: JavaScript, Web Development, Software Development, Front End Development, Programming

Code Tidbit by SamanthaMing.com

Here are three ways to filter out duplicates from an array and return only the unique values. My favorite is using Set cause it’s the shortest and simplest 😁

1. Using S et

Let me start first by explaining what Set is:

Set is a new data object introduced in ES6. Because Set only lets you store unique values. When you pass in an array, it will remove any duplicate values.

Okay, let’s go back to our code and break down what’s happening. There are 2 things going on:

First, we are creating a new Set by passing an array. Because Set only allows unique values, all duplicates will be removed. Now the duplicates are gone, we’re going to convert it back to an array by using the spread operator ...

Convert Set to an Array using Array.from

Alternatively, you can also use Array.from to convert a Set into an array:

2: Using filter

In order to understand this option, let’s go through what these two methods are doing: indexOf and filter .

indexOf

The indexOf method returns the first index it finds of the provided element from our array.

filter

The filter() method creates a new array of elements that pass the conditional we provide. In other words, if the element passes and returns true , it will be included in the filtered array. And any element that fails or return false , it will be NOT be in the filtered array.

Let’s step in and walk through what happens as we loop through the array.

Below is the output from the console.log showed above. The duplicates are where the index doesn’t match the indexOf. So in those cases, the condition will be false and won’t be included in our filtered array.

Retrieve the duplicate values

We can also use the filter method to retrieve the duplicate values from the array. We can do this by simply adjusting our condition like so:

Again, if we step through the code above and see the output:

3: Using reduce

The reduce method is used to reduce the elements of the array and combine them into a final array based on some reducer function that you pass.

In this case, our reducer function is checking if our final array contains the item. If it doesn’t, push that item into our final array. Otherwise, skip that element and return just our final array as is (essentially skipping over that element).

Reduce is always a bit more tricky to understand, so let’s also step into each case and see the output:

And here’s the output from the console.log:

Community Input
July 14 — in search of a universal heat shield size
By: Ruth Grace Wong
Tags: Travel

The first heat shield I made for a 11.75 inch rim bucket was perfect for my hot pepper plants bucket, but too big for my blue dream bucket, as it was very easy for the light to be touching it. I prototyped an intermediate size (between the heat shield and the LST grid), in search of a universal heat shield size that I can drop ship. It works for my blue dream bucket, and I’ll have to test it in the future on more standard buckets (Lowes, Home Depot), and measure how far down the bucket it rides.

In comparison, my LST grid size seems to work for any bucket. It’s a little bit more flexible than the heat shield too.
A Beginner’s Guide to Big O Notation (Part 1)
By: Alison Quaglia
Tags: Algorithms, Big O Notation, Software Development, Computer Science, Programming

O(n) Linear Time

To start preparing ratatouille, you first have to chop the ingredients:

let ingredients = ["zucchini", "eggplant", "squash", "tomato", "redPepper", "onion", "garlic", "herbesDeProvence"] function chop(ingredients) {

for (let i = 0; i < ingredients.length; i++) {

console.log(`${ingredients[i]} has been chopped!`)

}

}

How long should our chop function take to complete? Better yet, how many operations need to take place? 🤔

Since there are seven elements in our ingredients array and the function iterates through each one once (chopping as we go), we could say that seven operations need to take place (O(7)). If we added additional n ingredients to our array, this function would take n operations since it needs to touch upon each one of those elements once, otherwise known as O(n).

O(n) time complexity is also known as linear time and is generally considered an efficient solution. It isn’t as good or as fast as O(1) or O(log n), which we’ll get to later, but usually this time complexity is considered acceptable.

What would happen if we added another iteration? After all, those ratatouille ingredients need to roast in the oven!

Image credit: Pixar

let ingredients = ["zucchini", "eggplant", "squash", "tomato", "redPepper", "onion", "garlic", "herbesDeProvence"] function chop(ingredients) {

for (let i = 0; i < ingredients.length; i++) {

console.log(`${ingredients[i]} has been chopped!`)

}

} function roast(ingredients) {

for (let i = 0; i < ingredients.length; i++) {

console.log(`${ingredients[i]} has been roasted!`)

}

} function makeRatatouille(ingredients) {

chop(ingredients)

roast(ingredients)

}

Our makeRatatouille function needs to iterate through all of the ingredients twice: First, in the chop function, then again in the roast function. We could say this function takes O(2n) time, since it will iterate through the ingredients array exactly twice.
A Poem By Douglas A. Martin
By: The Awl
Tags: Poetry, Poems, The Poetry Section

by Mark Bibbins, Editor

D. L.

green bulb green eye green

red light hangs in the neighbor’s window

green issue shakes out green rugging

vie lets I could verge you

vices I could kiss

yellow honey of the knot

yellow tail not the rumble

blue clear linden in your blue in fired

blue car our first car

blue fullness of fired pointed blue raving

orange flowers in the grove

orange sun do I dare

red paper tonguing the sun

red and full and then material

red bird endlessly flying

red bell heads

Douglas A. Martin’s books include Once You Go Back (Seven Stories, 2009), Your Body Figured (Nightboat, 2008), and In the Time of Assignments: poems (Soft Skull, 2008).

My God, it’s full of poems! You may contact the editor at poems@theawl.com.
Build An iOS app with MongoDB Stitch
By: Daniel Kioko
Tags: Xcode, Mognodb, Swift, Software Development, iOS

What is MongoDB?

MongoDB is a document database that stores data in a ‘JSON-like’ format known as ‘BSON’ which basically stands for Binary JSON.

How will we implement it on our app?

We’ll use MongoDB Stitch which is a server-less platform that helps developers create apps without having to manually set up a server. The great thing is that it will be directly integrated with your database.

For this tutorial, we’ll run through the following steps:

Create an iOS project & install Stitch using CocoaPods Create a server & stitch app on MongoDB Write our code & upload a document

You can clone or download the project template from here: https://github.com/danielkioko/MongoApp
Blockchain vs. Regulations
By: Vladamir Sergeyev
Tags: Cryptocurrency, Bitcoin, Regulation, Blockchain, ICO

Not a single day without more regulation news trying to prevent the rise of the blockchain industry. From anybody’s perspective who is in the sector, that regulations are only for the benefit of a minority who avoid competition and want to take their chance by making everyone sell their blockchain assets. That way, the prices will fall and those who cause those prices to collapse will collect the most by their cleverly-thought speculations. Governments who seem against to this economic revolution, are actually trying to turn it to their own benefit. At the end they know that this is eventually what’s suppose to happen.

As the creators of Otrovio, we believe that temporary speculative changes only lasts few months. What seems diminishing today as mining, is now only redistributed to it’s long term keepers who tends to be the rule makers of future blockchain. Governments are putting forward their security concerns about a internet dependent economic system and their propagandas are presented within that framework where infact they’re trying to attein their share out of it. The trap they’re making will cause people to sell what they have at small prices and they won’t be interpreting that this is the government who is in the buyer side. A centralized approach for a decentralized technology … If you look closer that approach is no different than any historical innovation faced in the history.

Otrovio team thinks this trap will eventually put off its mask and markets will be in the bull trend very soon. Remember the current speculations are only favour to the makers of the policy.
Go Heatmap Yourself
By: Strava Engineering
Tags: Maps, Data Science

Recently we introduced a heatmapping feature on Strava, our first feature built using the Go programming language. This is part of work to move Strava towards a service-oriented architecture with well-defined interfaces that can be written in any language.

The service has two main components: the front end host and heatmap generating workers. Our main code base interacts with the front end: requesting to build, view and update maps. The front end then delegates jobs to the workers using a Gearman queue. The workers aggregate the activity data, generate the tiles, and upload everything to Amazon S3. Metadata is saved to DynamoDB and tiles are served to the user via CloudFront.

Pretty simple architecture, so why use Go? Well, we wanted something with a few key features: a built-in webserver to accept API commands, easy tie-in with existing C code, and speed to eliminate any overhead from an inherently slow aggregation process. A prototype in Ruby was painful, so we looked elsewhere.

Go fit the bill with its net/http library, cgo and compiled binaries, but it wasn’t all roses and lollipops along the way. First, Go lacks mature, fully supported client libraries. There is code on Github for just about anything, but very little of it seems “production ready.” As a result, we spent a lot of time building and testing our own libraries.

Another issue we ran into was a performance hit from cgo, fortunately we found a workaround. While very easy to use, there is a slow context switch when switching between Go code and C code. For example, during the aggregation step the Go code feeds the lat/lng points to the C code using something like:

for _, latlng := range latlngs { C.hm_addLatLng(latlng[0], latlng[1]) }

This worked, but when we modified the code to something like:

for i := 0; i < len(latlngs); i+=10 { C.hm_addLatLngBulk(latlngs[i][0], latlngs[i][1], latlngs[i+1][0], latlngs[i+1][1], ..., latlngs[i+9][0], latlngs[i+9][1], ) }

we got a 30% speed increase over this data aggregation step. That means that at least 30% of the runtime was spent making the function call, not doing any work. Something to keep in mind for the future.

Personally, I’m a fan of Go and was happy to have used it on this project. I enjoy the C style and Go makes most of the mess of C easier with a built in string types, slices for growable arrays and garbage collection, all while compiling into a single binary. We still have more to learn about Go, and time will tell if it was indeed the right choice for this project.

And as always, if you’re interesting in working on cool athlete-related projects like this, check out the open engineering positions at Strava.
Kendall County, Illinois
By: V. Plut
Tags: Photo Essay, History, Genealogy, Lit, Photography

I’m usually out at this time of year photographing snow laden fields lined with drifting ditches. But the rural spots near my home have the air of Spring — even the light casts itself brightly on barns and farmhouses. The only hints of Winter are the deep black shadows and silhouettes of trees.

We’ve had only one light dusting of snow here in the Midwest.

Tree Line Between Fields, ©V.Plut

Tree with Outbuildings, ©V.Plut

I always think of Mr. Thomas Rowland when I revisit this area with my camera in tote — buried alone beneath a white military marker in the local cemetery. He came from Nottinghamshire, England in the late 1850’s with his wife and three daughters, and drove to Chicago in an oxcart, where his wife took sick and died. He made his way down to Kendall County, Illinois where the earth is black and rich with nutrients, a place where a farmer might make a living.
Understanding New Location Permission Changes in iOS 13
By: Tejeshwar Singh Gill
Tags: Location, Ios 13, iOS App Development, iOS, Gps

1. “Allow Once”

Prior to iOS 13, there were two location permissions: When In Use (foreground) and Always (background). iOS 13 introduces a third option: Allow Once . The “Allow Once” option is considered a temporary authorization, with the app prompting again the next time it’s opened. This option allows users to grant When In Use for a single session:

After the session ends, you must request When In Use again. If a user who previously granted When In Use or Always upgrades to iOS 13, they will be grandfathered into that authorization status after upgrading. When you request location permission trough CLLocationManager , the user will see this popup with three choices:

Share the location just once with the app and ask again Share the location with the app when the app is in use Don’t share location with the app at all

If the user taps option 1: “Allow once”, your app will be notified that the CLAuthorizationStatus changed to authorizedWhenInUse . Just as you’re used to in older iOS version when you get a permanent permission. It is now allowed for your app to start requesting locations — no code changes necessary.

Users can jump out and back into their app, and you will still have location permission. It’s only after a (longer) period of inactivity that iOS will revoke the permission and turn the CLAuthorizationStatus back to notDetermined . Your CLLocationManagerDelegate will get notified of the change in location permission when the app is back in the foreground so the UI can be updated accordingly.

This makes the new ‘allow once’ feature a nice privacy improvement for users. It also lowers the bar for users to give the location features in your app a try and decide later whether to grant it a more permanent permission.
“Diversification is for Idiots” — Mark Cuban
By: Victor Hogrefe
Tags: Cryptocurrency, Bitcoin, Portfolio, Investing, Diversification

The market is too immature

This week, Matt Hougan, the head of research of the Bitwise investment fund spoke at the Digital Asset Strategy Summit in Dallas, an event attended by many of the big crypto fund players, as well as allocators. In his speech, he stated that we should have the humility to admit that no one knows the exact future of the blockchain space, and that we must therefore diversify. This diversification, he claimed, was the best way for investors –especially the institutional kind, to get exposure to crypto assets.

Matt Hougan, Head of Research at Bitwise

Bitwise has certainly been very successful with this message, having attracted more than $50 million in investments. While their sales pitch may sound reasonable, it relies on their clients making a false equivalency between the traditional stock- and the crypto markets. Index funds make a lot of sense on Wall Street, but are a terrible idea for crypto at this time.

Of the top 10 coins right now, at least five are not feasible in the long run, and at least two are arguably a scam. Further, the turnover rate of the top 10 is staggering. Only a few months ago, DASH, NEM, NEO, Zcash and IOTA were all part of this exclusive club. In another few months, the list will look very different once again. Even though Bitwise rebalances regularly (yet not consequently, since they still hold Zcash for some reason), they are down 21% since their inception on October 1st, 2017, while Bitcoin is up 50% during that same time span. This may not sound too bad in a bearish market, but other funds attending the same conference in Dallas, using more actively managed strategies, have had far greater success.

The typical pattern we observe is that most crypto assets rise in a wave-like pattern through the ranks, only to fall, and continue to fall, forever. They are replaced by the next big thing, the next speculative fad, the newest hype. This has been the case since 2014, and will continue to be the case for quite a while. You can read some of our research on relative coin rankings here.

If Bitwise keeps buying cryptos at the peak of their wave, they are merely capturing the tail end of a fad, only to have their holdings slowly fall through the ranks again, until they sell it for the next big thing.

Being humble about our ability to predict the future does not justify a blindfolded, shotgun approach. Just because no-one knows what will happen, doesn’t mean no-one knows what won’t happen.
Selling Memories
By: Mark Starlin
Tags: SciFi, Relationships, Memories, Fiction, Love

- 2099 -

After the Great Discovery in 2080, advances in science progressed at an astonishing rate. Each year brought countless new discoveries in technology and biology.

One of the most significant and controversial discoveries was memory extraction. Scientists had found a way to remove memories from the brain and store them. Then implant them into the minds of other people.

Naturally, scientists promoted the benefits of ME (memory extraction.) ME could be used to help trauma victims, removing horrible memories. It could also be used in court cases to recover incriminating memories from the accused. Although, lawyers argued that memories could be untrustworthy.

Scientists also claimed that entire lives worth of memories could be stored for posterity. “Imagine having Einstein’s or Leonardo da Vinci’s memories stored,” they said. It didn’t really matter. Once the ME genie was out of the bottle, it was impossible to put it back.

As these things usually progress, ME became a source of income for many. College graduates discovered they could sell most of their school knowledge once they got jobs, as they needed precious little of it in the work world.

Elderly people sold memories to supplement their government income. Their early memories were very popular with young people wanting to experience the past. Although the process often left the elderly with few memories by the time they died.

Businesses sprung up selling memories as entertainment. People around the world took part in every conceivable activity with the intention of selling the memories. Often to purchase other memories.
News apps are dying, and notifications are killing them.
By: Sarah Schmalbach
Tags: News, Mobile, Web Notifications, Notifications, Apps

You may not have noticed (because honestly, there were plenty of reasons to be distracted this year), but 2016 was the year that news alerts started looking a lot more like news apps.

Think about the last news alert you received on your phone. Did it have a headline, a photo or a GIF? Did it let you save it for later, or rate it? News alerts are getting richer to the point that it’s time to have a conversation about what the purpose of an app is if you can get everything you need to experience a news story on your lock screen.
Old Rocks Nested in Outcrops
By: Harvey Aughton
Tags: Britain, Archeology, Tintagel, Poetry

The mines are closed now, never

Leaden by labour more than then

When we were asked to take
Mathematics of Gradient Descent.
By: Ravindra Sah
Tags: Differentiation, Linear Regression Python, Derivatives, Gradient Descent, Gradient Descent Python

Note: This is the third part of the linear regression tutorial. Check out all the parts given in the contents below to follow along with the tutorial.

Contents: Introduction to linear regression and cost function, How the Gradient Descent Algorithm works, Mathematics of Gradient Descent.

Part 3: Mathematics of Gradient Descent Algorithm

I suppose you don’t know how to differentiate the above cost function. At the end of this tutorial, you will be able to differentiate this complex looking equation with ease. Here we are not just going to learn how to differentiate the function but also understand the concept behind doing differentiation, so be patient and stick to the tutorial till the end.

You know how to calculate the slope of a straight line, right?

What is the gradient? let me ask you in another way what do you understand by the slope of a straight line is 0.5? If you are walking on a straight line whose slope is 0.5 that means you are moving only 2 units in the y-direction for 4 units in the x-direction. Gradients or slope is simply the rate of change in the y-direction with respect to the rate of change in the x-direction. Gradients also give a sense of steepness. A line with a slope with 0 is a horizontal line whereas a line with a slope greater or less than 0 is an inclined line. The steepness quality of the gradient helps the gradient descent algorithm to find a path of steepest descent in order to minimize the cost function.

Introduction to the derivative

The concept of the derivative has been explained clearly in the video given above or click here to read at mathisfun.com. Our end goal is to be able to calculate partial derivative but before that, we are going to learn how to use the power rule and chain rule to calculate the derivative of a function.

Power rule:

Chain rule:

Partial derivative:

When we have two or more variables in the function we differentiate the function with one variable at a time and supposing other variables as a constant term, this method is called partial derivative. It is denoted by curly ∂. Let’s say Z is the function of X and Y. if we differentiate Z with respect to X then Y is supposed to be a constant term and vice versa. See the example below.

The derivative of Cost function:

Here, the cost function is a function of two variables θ0 and θ1. X(i) is an ith training example and Y(i) is a target value for ith training example.

Gradient Descent intuition

Conclusion:

The gradient is a slope of a tangent line that tells us whether a function at a particular point is increasing or decreasing. Resultant of Gradients helps us to know about the steepest path to follow in order to reach the minimum of a function. The number of Gradients is equal to the number of parameters or variables a function has.
Sand Babies
By: Edie Tuck
Tags: Dream Journal, Kiss, Happiness, Strange, Dreams

I was in California with a friend when I saw you — it had been years. Your sister was there. I was following a tandem bike made to look like a giant pink pig that was being ridden cross-country by a mother and her young daughter.

They stopped for ice cream and there you were.

There were puppies, maybe they were for sale. I sat down to play with them, and you sat beside me. So close no sunlight could pass between us. Your sister sat behind us, watching.

The puppies turned to babies. They were so small, like little dolls. Some kid had them all in a row, buried up to their shoulders in sand. I picked up the first one and the kid yelled at me for messing up his twisted game. I said “I’ll put him back, don’t worry.” but I wasn’t planning on putting him back.

He looked at me and cooed and smiled as I talked to him about his beautiful red hair, and he grabbed my pinky with his tiny hand.

And then as we sat there, you turned my face towards you and kissed me. So slowly, you kissed me. So slowly that the moment felt frozen. And then you really kissed me, and I didn’t want it to end. But it had to because you had to go. Even awake, I can still taste you on my lips.

I put the baby down and he had turned to sand. So I drew a sleeping face on him with my finger, where his face would have been, in hopes that the kid would just leave him be and let him sleep.

Then I leaned back onto your sister and she asked me “What are you?”, and I said “Happy. I’m happy.”
Playground Games: Not Being Invited Still Hurts As an Adult
By: Laura Belle
Tags: This Happened To Me, Friendship, Women, Life Lessons, Relationships

We’re on a roll. My son, 3 months shy of 13-years-old is talking. I want more answers.

“Alright, how about this. Say your buddy Brian, whom you’re friends with, but you don’t text or hang out with all the time, has a party. He invites all your lunch buddy friends. Boris, George, Berk, and Fabio. But he doesn’t invite you. How would that make you feel? How would you handle that?”

He thinks for a second, and chuckles. “Alright, first of all mom, those names. No.”

“Honestly, it would hurt. I’d be mad at first. But Boris, George, Berk, Fabio and I are all friends, right? They went to the party because they were invited. It has nothing to do with me. And Brian? I haven’t done anything to him. I’d wish him Happy Birthday at school if it came up at lunch or something, but I wouldn’t let him know it bothered me. There’s no point.”

I persist. “Right. But you don’t just get over it that fast. You have to resolve those feelings. I mean, aren’t you still wondering why he didn’t invite you?”

“Mom, I know what you’re talking about. I heard your rant to Dad. The entire house did. Mom, look. You are better than all those women. You love your time with Dad and that makes you happy. You read to me and scratch my head at night.

You aren’t like her. That’s why she didn’t invite you.

You don’t drink. You don’t talk about all that stuff they talk about. You like books and dogs. Mom, everyone thinks you’re great. Besides, why do you care about going to a party for someone who obviously doesn’t want to make the effort to get to know you better? Why should she matter in your life?”
How to connect Charles Proxy with Flutter using Dio.
By: Marcin Oziemski
Tags: Flutter, Mobile, Charles Proxy, Dart, Proxy

Photo by Kara Eads on Unsplash (a little bit changed)

So this is my recipe for handling Charles Proxy in my project.

Ingredients:

Dio

Charles Proxy

— dart-define

So first of all small description of Ingredients.

Dio is a great Http client for Dart which I think right now is an industry-standard.

Charles Proxy is an HTTP proxy / HTTP monitor / Reverse Proxy that enables a developer to view all of the HTTP and SSL / HTTPS traffic between their machine and the Internet.

If you don’t know — dart-define there is a great article with step by step instruction on how to properly configure it to work with native parts. It’s basically a way to pass environment variables into your code for Dart and both native platforms (iOS and Android). Here I’m using it only in the Dart part.

So let's start!

Add to your flutter run function dart define:

flutter run --dart-define=CHARLES_PROXY_IP=<YOUR_LOCAL_IP>

2. In a place where you initialize your Dio instance call this function:

3. Go to the SSL Certificates page from Charles docs and prepare iOS and Android configurations.

4. Run the flutter run function with dart define from step 1. for example:

flutter run --dart-define=CHARLES_PROXY_IP=192.168.0.52

5. Open Charles for watching the success!!!

Pro-Tip

If you are using Android Studio add special run configuration and add it to your VCS that everybody from your project could see that:

THAT'S ALL 😃

Thanks for reading 🙇 and if you found this recipe useful please leave 👏.
Sometimes You Feel Every Human Emotion at Once
By: Sophie Lucido Johnson
Tags: Self Improvement, Emotions, This Is Us, Comics, Self

Sometimes You Feel Every Human Emotion at Once

What I learned tracking my feelings every day for a year
Why I’m Pledging to Watch More Porn Starting Now
By: Tracey Folly
Tags: Sexuality, Women, Relationships, Love, Humor

There’s a lot of pornography watching in my future — for research purposes only, of course.

It has been a very long time since I have seen an adult flick — too long. The last time I consumed my share of pornography was when I was actively writing erotica for a living. Even then, I watched porn just for research — honest to goodness.

When I wrote sex scenes on a daily basis, my imagination could only take me so far. Once I ran out of ideas for erotic scenes, I needed to recharge my battery — so to speak.

That’s when I would turn to Google and search for a few quick videos to get my creative juices flowing. I also made good use of Google images. As they say, one picture is worth a thousand words.

This time around, I plan to watch porn for a different type of research. Despite several long-term sexual relationships and an ill-fated marriage, I have to admit that my bedroom skills are sorely lacking. Practice hasn’t made perfect. I think I need professional help.
HelloGold Foundation Update #13–6th July 2018
By: Quentin Bignon
Tags: Blockchain, Cryptocurrency, Ethereum, Financial Inclusion, Gold

The results were compelling, so the campaign has been extended. The impact on margins are negligible at this stage. Whatever is given away from reduced Buy fees (200bps to 79bps) are more than made up from 1) higher Management and Sell fees 2) lower cost of acquisition and 3) faster inventory turnover.

Meanwhile development of the brand continues on and major investments are being planned to raise awareness. Product development is also moving strongly and a standout referral campaign will be introduced in the next few weeks. Looking at how the funnel has opened up, strong gains are foreseen simply by “piling” more people at the top of the funnel through the awareness and referral campaigns.

On a lighter note, we’ve seen some great football games and even more amazing surprises! HelloGold is also buzzing with “World Cup Fever” and will be running a few cool campaigns at the tail end of the tournament.

June was a good month. July is promising to be even better.

Events and talks

Techsauce bangkok (22–23 june)

Robin was invited to speak at Techsauce Bangkok to discuss ICOs and its impact on business funding.

The trip was also an the opportunity to share a dinner with the Thai HelloGold team ready to launch the HelloGold mobile app in one of Asia’s top five markets for gold! Everybody at HelloGold is really excited to see Thailand opening, and the business taking a new dimension outside of it’s Malaysian base!

Echelon 2018 (28–29 june)

The following week Robin, Kai Lin and Isabel went down to Singapore to attend Echelon2018. Singapore is a hub of innovation for fintech and blockchain companies. It’s always a good thing to attend such events and be able to engage with other actors at the forefront of the financial revolution.

Robin was also speaking at the event, confirming his position one of the leading and most respected fintech entrepreneurs in South East Asia. As a matter of fact, he speaks with such authority on the matter that one could almost forget he is also one of the best experts in the region on all things gold!
How I Use My Kindle To Learn
By: Andrew Kuttain
Tags: Kindle, Study, Education, Reading, Learning

In the past few years, Kindles have gradually exploded on the reader/writer scene. Slowly, more and more people are buying Kindles to read, to save physical space and in some cases save money.

My brother got me a Kindle last Christmas, giving us an opportunity to share PDFs and digital books easily. I’ve always been a fan of paperbooks, but the Kindle was a great way for me to get older, lesser known books that I was interested in reading but couldn’t seem to find in stores (and often at a cheaper price, and without the hassle of having something shipped to me, saving a lot of travel time). But I had a bit of a concern: how do I take notes and remember what I learn, if it’s a digital file? Education is super important to me, as is retaining what I learn and turning it into something actionable. Taking notes on the Kindle is a bit of an uphill battle, not to mention needing to go back through the highlights to find what stood out to you. Kindle’s user interface isn’t the best, which makes the process twice as difficult.

However, using Kindle actively to educate yourself and utilize the lessons you learn in what you read is doable, and it requires a few simple steps and some sly thinking. You can set up your own system that gets ideas from your Kindle to your phone, tablet, or computer, and into your head so you can apply whatever you need to your life.

Below are the steps I take when reading on my Kindle to pick out what you want to learn, how to capture it, and how to turn them into notes you can tap into in the future.
Universe of Medium
By: Hyeokyoung Lee
Tags: Metatool, Columbia, Work, F19, Gsapp

Course at Columbia University’s GSAPP. The core thesis of Metatool is: to design critically, intentionally, intelligently, and playfully, designers must have the ability to design new critical / experimental / playful design tools.

Follow