fabiochiu/medium-articles huggingface dataset:
Styled Components: A CSS-in-JS Approach
By: Jennifer Fu
Tags: JavaScript, React, Reactjs, Nodejs, Programming

Build More Styled Components

We continue building styled components for div and a tags:

AppDiv is created at line five, with styles at lines 5-7. AppDiv replaces div with className at line 26.

AppLink is created at line 20, with styles at lines 20-22. AppLink replaces a with className at line 32.

More things are styled:

Although the text alignment for AppDiv isn’t obvious, the blue link puts us a step closer to the original Create React App.

We’ve used styled.tagname helper methods. Can the tagname be a component name?

No. If we want to build upon a tagged template literal, styled should be used as a constructor like styled(Component) . The new component inherits the styling of Component .

In the following code, Button1 is styled with the red text with white background. Button2 inherits the red text, and has the yellow background. Button3 inherits the yellow background, and is styled with the green text.

const Button1 = styled.button`

color: red;

background: white;

`; const Button2 = styled(Button1)`

background: yellow;

`; const Button3 = styled(Button2)`

color: green;

`;

Put them together:

<Button1>Button1</Button1>

<Button2>Button2</Button2>

<Button3>Button3</Button3>

It looks like this:

If the styled target is a simple element ( styled.tagName ), styled components passes through any known HTML attribute to the DOM. If it’s a custom React component ( styled(Component) ), styled components pass through all props.

The above button example can be accomplished by passed props used in interpolations:

const Button = styled.button`

color: ${(props) => props.clr || "red"};

background: ${(props) => props.bg || "white"};;

`;

Here’s the usage:

<Button>Button1</Button>

<Button bg="yellow">Button2</Button>

<Button clr="green" bg="yellow">Button3</Button>

It’s important to define styled components outside the render method, otherwise, they are recreated on every single render pass.

For the three generated buttons, each has two classes connected to it:

The first is the static class, which does not have any style attached to it. It’s used to quickly identify which styled component a DOM object belongs to.

The second one is the dynamic class, which is different for every element. It’s used to style the component:
Mark Zuckerberg Shares The Jewish Prayer He Says to His Daughters Every Night
Tags: Mark Zuckerberg, Facebook, Ethics, Jewish, Jef

Mark Zuckerberg is among the busiest CEOs around the globe. The 33-year-old runs Facebook, the social-media giant with a market cap of $547 billion.

As CEO, Zuckerberg spends a lot of time directing and managing his company, however he still makes the time to exercise, travel and most importantly, spend time with his family.

His philosophy is to stay productive and balanced by eliminating nonessential choices from his life and by setting ambitious goals for himself.

His typical routine includes an 8 am wake up call, a morning work out session and a lot of time at Facebook.

He doesn’t waste time dealing with any of the little choices we make everyday such as picking an outfit. When asked about his wardrobe in 2014, he told an audience: “I really want to clear my life to make it so that I have to make as few decisions as possible about anything except how to best serve this community.”

Despite his busy life, he always manages to spend some time with his wife Priscilla Chan and his daughters Max and August. He also doesn’t give up on his Jewish identity and cares to pass it on to his daughters.

Every night before going to bed, the Facebook CEO tucks his children in with a traditional Jewish prayer, the “Mi Shebeirach.”

He mentioned the same prayer when he gave the commencement address at Harvard University. Facebook founder said: “It goes, ‘May the source of strength who blessed the ones before us help us find the courage to make our lives a blessing,’ ” he said. “I hope you find the courage to make your life a blessing.”

Zuckerberg quoted “Mi Shebeirach” prayer for healing that was written by Debbie Friedman, one of the most significant Jewish musicians of the past 50 years.
Functional Programming in Java
By: Thameena S
Tags: Lambda, Java, Lambda Expressions, Functional Programming, Functionalinterface

LAMBDA EXPRESSIONS

Lambda expressions or functions are blocks of code that can be assigned to a variable, passed around as an argument or even returned from functions. They are anonymous functions and contains parameters, lambda operator (->) and function body.

Lambda expression syntax

Lambda expressions were introduced in Java as a means of supporting functional programming.

As Lambda expressions are anonymous functions, passed around as arguments, we need a way to execute these functions on demand. This is where functional interfaces come into play.

Functional interfaces, having only a single abstract method, accepts the lambda function or a method reference as the implementation for that particular abstract method.

To understand better, let’s see how streams and optionals uses lambda expressions as implementations for the abstract method in functional interfaces.

FUNCTIONAL INTERFACES USED IN JAVA STREAMS

Streams in Java provide a functional approach to process a collection of objects. Stream.java provides different methods to process list elements, map(), flatMap(), filter(), sorted() etc, each of which takes a functional interface type as an argument.

Let’s consider an example of a LIST of names and Stream on the list to filter out names that contains the letter ‘a’.

The .filter() here is a function to filter out elements from the list that satisfies the specified criteria and the .collect() returns back another list with the filtered elements. Notice that the input passed onto the filter function is a lambda expression. The filter() method in Stream.java has the following structure.

filter function in Stream.java from java.util.stream

As you can see, filter accepts a Predicate as an argument.

So what is a predicate?

Predicate.java

A predicate is a functional interface provided in java.util.function package and contains one abstract method, which is, boolean test(T t).

But how do we get the implementation for test(T t)?

What gets executed when predicate.test(t) is called?
3 Ways to Implement the Singleton Pattern in TypeScript With Node.js
By: Ardy Dedase
Tags: Technology, Startup, Software Development, JavaScript, Programming

The Problem — Logging Example

Here’s an example problem: I have a Node.js app for payment processing that uses a Logger class. We want to keep a single logger instance in this example and ensure the Logger state is shared across the Payment app. To keep things simple, let’s say that we need to ensure that the logger needs to keep track of the total number of logged messages within the app. Ensuring that the counter is tracked globally within the app means that we will need a singleton class to achieve this.

A high-level diagram of the sample app by the author.

Let’s go through each of the classes that we will be using.

Logger class: Logger.ts

A basic logger class that allows its clients to log a message with a timestamp. It also allows the client to retrieve the total number of logged messages.

Payment class: Payment.ts

The Payment processing class processes the payment. It logs the payment instantiation and payment processing:

The entry point of the app: index.ts

The entry point creates an instance of the Logger class and processes the payment. It also processes the payment through the Payment class:

If we run the code above, we will get the following output:

# Run the app

tsc && node dist/creational/singleton/problem/index.js

Output screenshot by the author.

Notice that the log count stays at 1 despite showing 3 logged messages. The count remains at 1 because a new instance of Logger is created in index.ts and Payment.ts separately. The log count here only represents what’s logged in index.ts . However, we also want to include the number of logged messages in the Payment class.

Here are different ways to solve this problem by using a singleton design pattern.
How to Focus: Back to Basics as a form of Meditation
By: Adam Colthorpe
Tags: Productivity, Self Improvement, Life, Meditation, Work

How to Focus: Back to Basics as a form of Meditation

There’s no chanting, a fair amount of swearing, it’s a pain in the ass — but it delivers perspective, appreciation, and focus.

Wood by Robert Ruggiero

It’s a brand new year, we’ve created our New Year’s Resolutions and we’ve even looked at how to make sure we deliver on our resolutions, but we still need help in knuckling down and focusing on the tasks and the year ahead. What’s a guy to do?

The first thing I always do is procrastinate. I will write an article at some point about Positive Procrastination (I appreciate the irony of putting that off for now) but I genuinely believe in living by a fully comprehensive to-do list and being able to procrastinate by picking up on another task that needs doing so that time is never wasted, just tasks are not necessarily prioritised in the best way.

I reach for tools that will help me succeed. Anyone who has ever bought more than one self-help book will recognise the pattern:

I need help with task X; e.g. writing articles I will spend time researching what other people have done to write articles I will spend my money buying bokos/subscribing to resources that other people sell about writing I will realise that all of the people selling these resources didn’t make any money from writing and instead make their money from talking about making money from writing

Lifering by Frederick Tubiermont

The ridiculous thing is that I know what I need to succeed and how to focus. I’ve done it before, I’ve learned it before, I’ve achieved it before. Not everyone works on a computer 80% of the time but for me, the winning pattern is:
Welcome To October, Ghouls
By: Shani Silver
Tags: Halloween, Writing, October, Weird, Humor

Haunt yourself a little happy.

Photo by Cederic X on Unsplash

Welcome, ye who enter here, to October. Macabre Month. Scary Christmas. The month where those of us who live in the dark at last have our time in the spotlight. It’s pumpkins and chilling movies and all manner of treats dressed as body parts. It’s falling leaves and cool air and plastic spider rings just kind of everywhere. It’s a general layer of sinister fog enrobing the entire month and I don’t mind telling you I’m excited.

Naturally, my decor went up September first, but I don’t expect anyone to get it. September is a garbage month full of hot weather when we don’t want it and no discernible enjoyable traits. Additionally, how can I be expected to bask in the orange and purple glow of my twinkle lights for just 31 days per year? That hardly seems like enough. I buy skulls in bulk for heaven’s sake. But today is October 1st, officially the start of Halloween season, a spooky and sinister time that brews great personal joy within my cold, black heart. My black faux candelabra is on as a write this. Dance, little orange flames, dance.

Photo by Shani Silver.

Why do we like this crap? Why are the shelves of Target bedecked with increasing quantities of battery operated novelties and home exterior decor to rival the Griswolds? I have a theory that everyone loves a little creepy, it’s just that October is the only time they feel confident saying so. Nobody wants to be a weirdo, but in October, we all are.

There’s a safety to the scariness of October. Even those who don’t leave the faux raven skeletons out all year have a laugh as they dabble in the darkness. We want to be scared, but safely. Like we need the confidence that the chainsaw is fake to have a good time, you know? I have fake tombstones and a skull in a snow globe in my living room and this month is the only time I can have people over and not have to explain them. This is maybe the only month of the year I can thoroughly relax.

October is a month that, when you think about it, uses death as decoration and yet somehow we’re all remarkably upbeat. It’s indulgence in weirdness of the highest order and it’s a beautiful thing to see and offer candy to out of an automated bowl. October is the only month human bones are funny. I’m not asking for an explanation I’m just stating the facts.

So go forth, gremlins. Haunt on, you spirits. Jump into this cobweb-covered month with both feet—better still if they’re wearing witch shoes at the time. I celebrate October with reckless frivolity, coating my home in black and white striped accents and draping creepy cloth over anything that will keep still. I’ve been running makeup trials of my costume for two weeks and I’ve owned it’s major components since summer. But for a horrible error on my part and the cat would be resting in a tiny haunted house of her own right now. Dammit for selling out. Anyway—what I’m saying is, embrace your inner creep, celebrate your sinister side, and have a very, very happy Halloween, starting right now.
What’s Going On With Those Swift Substrings?
By: Avi Tsadok
Tags: Development, Mobile, Swift, iOS, Programming

The Root of the Problem — UTF-8

To understand how Strings work, we need to go back to the basics — Unicode and UTF-8.

When we work with Strings, we have the feeling we are dealing with a plain text, just an array of symbols and numbers, but this is a lie. It used to be the case back then, when computers worked with something called ASCII.

ASCII was a way to represent all the important characters (letters, digits, symbols) as a number between 32 to 127, so every character took one byte of memory.

And what about 127 to 255? Every developer could use it for whatever they wanted, so you can imagine the mess we had when computers got out of the US to non-English countries.

That’s where Unicode takes a part — Unicode is the way of representing every letter and digit you can think of, in almost every language in the world, and not only that — Unicode is great for representing emojis as well.

So, the Unicode characters map is a four-bytes map, and since most of the characters we are typing are English letters and digits, it is very inefficient to allocate four bytes for each character, when in most cases, one byte is enough.

That’s the final piece of the matrix -> encoding, and in this case — UTF-8.

UTF-8 is a way to encode a Unicode string to smaller chunks of data so it can be more efficient.
20 Terminal Commands That You Must Know
By: Abhay Parashar
Tags: Tech, Technology, Productivity, Windows 10, Education

----------------Manipulation With Files and Folders-----------------

1. Encrypting Files

I Know windows is not so much famous for the security it offers but still, there are some methods that can give a guarded feel. Encrypting Files is one of them. Many windows users use third-party apps to encrypt their data but windows also offer an inbuild encryption system for securing files.

Open Your Terminal (Win+R Type CMD and Press Enter), and target your terminal to the folder where your files are that you want to secure. Then simply use the command below.

Cipher /E

Now No one without the password can not access your files. If You Want to Decrypt the Files than you can use Cipher \D .

2. File Compare

We all store our important data in files and overtime when the data of the files change and gets updates then it becomes very tough to find the difference between the previous and latest version of the file. You can also relate it with two versions of a coding project. We usually create multiple versions for our project file and in the end, we forgot what changes we have done.

Using the file compare command of the terminal we can find the difference between the two files by just a simple line of command.

fc /a File1.txt File2.txt ##Simple compare

fc /b File1.txt File2.txt ##Binary compare (Best For Images)

3. Hiding Folders

You Might be thinking that one I already know but wait the one you are thinking is not good enough. we all know there is an easy way of hiding folders using the right-click and then in properties checking the checkbox “Hidden”. if you know it then you also know that folders can be seen if you go in the view and then check the “Hidden Files” Check box in the top bar. Anyone who is using your computer can do that and easily access your hidden files. There is a much better and safe way is to use the terminal.

In the Terminal Target The location to the parent of your desired folder and then type the below command.

Attrib +h +s +r FOLDER_NAME ## Attrib +h +s +r studymaterial

Now YOur Folder is hidden completely and you can’t even see it by checking the Hidden Files checkbox in the top bar. To unhide the folder, you can use the command

Attrib -h -s -r FOLDER_NAME ## Attrib -h -s -r studymaterial

4. Showing File Structure

This one I found useful because most of the time when you are working in a team on a big project the most important thing is the file structure. One Mistake in the file structure and your all efforts wasted. You don’t do a bigger mistake like this that's why CMD comes with a command which helps you to show the file structure.
Kubernetes Just Deprecated Docker Support. What Now?
By: Edgar Rodríguez
Tags: Kubernetes, Docker, Container Orchestration, Programming, Containerd

Kubernetes Just Deprecated Docker Support. What Now?

Kat Cosgrove tweeted this on December 2:

Let me transcribe the whole thread for you here if you’re not a Twitter user:

“So, Kubernetes is deprecating Docker support and you’re either nervous or confused. That’s okay! I would like to help you understand what’s happening. A thread! 1/10

From Kubernetes v1.20, you will receive a deprecation warning for Docker. After that, you will need to use a different container runtime. Yes, this will break your clusters. You might think that Docker == Kubernetes. Not so! 2/10

The thing we call Docker is actually an entire tech stack, which includes a thing called containerd as well as some other stuff, like some fancy UX changes that make it easier for humans to interact with. Containerd is a high-level container runtime by itself. 3/10

Kubernetes doesn’t need all of that fancy UX stuff, though. It just needs the container runtime. Using Docker, the whole stack, as your container runtime means Kubernetes has to use something called dockershim to interact with the parts it actually needs. 4/10

This is because Docker isn’t CRI (Container Runtime Interface) compliant. Dockershim allows us to get around that, but it also means we have an entirely separate thing to maintain just so we can use Docker as our runtime. 5/10

This kind of sucks. It’s inconvenient. The solution is to cut out the abstraction and just use containerd as our container runtime in Kubernetes. Because, again, Kubernetes isn’t a human — it doesn’t need the UX enhancements. 6/10

So, you don’t need to panic. Docker isn’t dead (yet), and it still has its uses. You just can’t use it as your container runtime in Kubernetes anymore. After the next version, you need to switch to containerd. 7/10

Yes, you COULD just stay on an old version of Kubernetes. No, you absolutely should not, or else @IanColdwater will haunt your clusters. Ghost 8/10

The Kubernetes docs for container runtimes are here, with info about using containerd or CRI-O: https://kubernetes.io/docs/setup/production-environment/container-runtimes/… 9/10

Anyway, I hope this helped allay some anxiety or misunderstandings. If you’re still confused, that’s okay! Ask questions! This is REALLY complicated. Your questions aren’t stupid, even if they’re simple! 10/10

BONUS TWEET: Yes, Kubernetes will still run images built by Docker! TL;DR not a whole lot will change for devs, those images are still compliant with OCI (Open Container Initiative) and containerd knows what to do with them.”
8 Classic JavaScript-Coding Mistakes You Should Avoid
By: Anupam Chugh
Tags: Programming, Software Development, Web Development, JavaScript, Startup

Handling the ` this ` Reference

The this keyword confuses every JavaScript developer. Perhaps, it’s a lot different than what other programming languages like Java offer.

The this keyword refers to an object, and the reference can change depending on how the function is called and not where it’s defined.

For methods inside an object, this would refer to the invoker object itself, whereas for independent functions, this refers to a global object.

let user = {

name: "your name",

getName() {

console.log(this.name);

}

}; user.getName();

Now, if we extract the function, the this reference would change:

let user = {

name: "your name",

getName: function(){

console.log(this.name);

}

}; user.getName() //your name

var getUsername = user.getName; getUsername() //undefined

Even though getUsername holds a reference of getName , the invocation site has changed, thereby making this a global object. Hence the getUsername() returns undefined.

Another trickier case of the this keyword is when it’s used inside an anonymous function. The this context within anonymous functions doesn’t have access to the outer object and, hence, points to the global scope. To access object properties inside anonymous functions, we need to pass the object’s instance, as shown below:

let user = {

name: "your name",

getName: function(){

var self = this;

(function () {

console.log(self.name);

}());



}

};

Instead of storing the this reference in a variable like we did above, we could have also invoked call(this) on the anonymous function, as shown below:
The Late Night Dream
By: Evince Uhurebor
Tags: Poetry, Poetry On Medium, Writing, Horror Fiction, Self

The Late Night Dream

A short horror poetry.

Once upon a midsummer night

There came a roaring from the wind.

There I stood.

Wandering and coupled with fear.

Ravaging thoughts and goose bumps.

Filled my flesh.

Then suddenly,

A shadow.

A very big one.

With long nails and fangs.

Like that of a beast.

Ready to pounce on me.

Ready to devour me.

There I stood.

Unable to move.

Unable to run.

Unable to scream.

Then I knew.

The end is near.

The end is now.

With nobody to save me.

But a voice.

A still small voice.

A melodious one.

Like that of an angel.

Wake up! wake up!!

Little monster.

© Evince pen
Five app prototyping tools compared
By: Tes Mat
Tags: Design, UX, Tech, Prototyping, UI

There are 🇺🇦 Ukrainian, 🇷🇺 Russian (+ another one) and 🇨🇳 Chinese (+ another one) translations of this article, and there’s a follow-up with Principle, Flinto for Mac & Tumult Hype.

I recreated the IF by IFTTT user onboarding in five different high-fidelity prototyping tools to get an idea of the differences between them: Proto.io, Pixate, Framer, Facebook’s Origami and RelativeWave’s Form.

See how these five recreations behave compared to the real thing:

Pages versus Layers

Why did I select these five? I discovered that recreating something that is this animation-heavy (icons moving around in different directions and at different speeds) is not even possible in most prototyping packages. The majority of tools only let you connect static pages, while only the more complex ones let you animate different objects or layers within a given page.

I’ll explain it a bit more.

Page-based tools

In a page-based tool, you lay out different screens, and then you make hotspots or buttons to connect them together. You tap a button somewhere on one screen to go to another screen. Page-based tools generally also have a choice of different transitions between screens, like fade in, slide in from the right, slide up from below, etc. It’s a bit clunky, but it’s a good way to make quick mockups when you’re still figuring out the flow of an app (which and how many screens are needed, how they would appear, where buttons should go, etc.).

Examples of page-based tools are: Briefs, InVision, Notism, Flinto, Fluid, Mockup.io, Prott, POP, Marvel, Balsamiq, Red Pen and Keynotopia. Granted, in some of these tools you can have animations or scrollable areas within a page, but you cannot use them to emulate every interaction possible in real native apps.

Layer-based tools

Every asset, interface element, or in other words, layer can be made tappable, swipe-able, draggable… but also animated. Prototyping a complete app in a tool like this would be crazy, though; it would be too much work (you might as well build the real app). But they’re great for trying out new interactions, or for tweaking the timing of an animation.

Proto.io, Pixate, Framer, Facebook’s Origami and RelativeWave’s Form are the tools I tried. To be honest, there are a few others — Axure and Indigo Studio — but they seem to be more enterprisey (read: rather expensive). I might try them out some other time.

So, onwards with the chosen ones.
An RDF crawler
By: Matt Biddulph
Tags: Java, Rdf

I wrote an RDF crawler (aka scutter) using Java and the Jena RDF toolkit that spiders the web gathering up semantic web data and storing it in any of Jena’s backend stores (in-memory, Berkeley DB, mysql, etc). Download it here.

The system is multithreaded and so can simultaneously download from many sources while the aggregation thread does the processing. It builds a model that remembers the provenance of the RDF and takes care to delete and replace triples if it hits the same URL twice, so you can run it as often as you like to keep the data fresh without bloating the store with out-of-date information. As yet it doesn’t do anything with what it gathers; the information’s just sitting there waiting for interesting applications to be built on top of it.

To use it as distributed, set up a mysql database called “scutter” and set the username and password in the DBConnection setup in Scutter.java then recompile using ‘ant compile’ (sorry, no handy config files in this 0.1 release). Run the script scutter.sh passing in as many starting-point URLs as you like. These will be added to the queue, and any rdfs:seeAlso pointers in the downloaded RDF will be recursively followed until no more unique URLs can be found. The biggest known issue at the moment is that it doesn’t do proper management to work out when it’s run out of URLs — it just stops. The standard log4j.properties file can be edited to change what gets logged — with full debugging information turned on, you get quite a lot of output.

Plans for the future include tying FOAF-related processing into the aggregation such as smushing and mbox_sha1sum normalising, and making a publish/subscribe-based system so that people who can’t run their own aggregators can subscribe to the RDF that’s gathered.
診所排程規劃：3 大重點，幫您快速打造適合的線上預約掛號網站！
By: Simplybook.Me
Tags: Simplybookrecommend, Simplybook, 五分鐘打造專屬預約系統, Medical, Productivity

免費的跨平台線上預約排程系統，同時支援網頁版以及行動裝置

Oh, Instagram, the source of inspiration for countless millennials, a visual gem and the perfect “look at how cool I…
Cypress and Mobile Apps?. Cypress.io + React Native Web + Pareto…
By: James Fulford
Tags: Mobile App Development, JavaScript, Software Development, Expo, React Native

What mobile app testing feels like. Ow. (Pen and paper? Seriously? :) ) Photo by freestocks on Unsplash

It is tricky to set up automated testing of mobile apps. Maybe you’re on a small project and your Jest + Enzyme unit tests aren’t giving you the ROI you want. Maybe you want to test network error scenarios or time-sensitive logic, but don’t have the means to do so in your current app framework. Your friends in the web-development world tell you about Cypress, but they don’t have a React-Native mobile app to test.

There’s a way to bridge the gap that doesn’t require rearchitecting your app. In this article, I lay out how to apply the best of web app testing to your React-Native mobile app, with a few tips and tricks along the way.

Cypress

(Cypress is a development-oriented web-app end-to-end and integration testing tool. Read more in the Cypress.io docs)

When selecting an e2e testing solution for web apps, we face the question “should I choose a Selenium-based tool, or should I choose Cypress?” This is a false-dichotomy — though they both test web apps, they solve different problems. Listen to the answer the Cypress.io docs gives in the FAQ section:

… Cypress may not be able to give you 100% coverage without you changing anything, but that’s okay. Use different tools to test the less accessible parts of your application, and let Cypress test the other 99%. (From Cypress.io FAQ)

If you’re a fan of the Pareto Principle (“20% effort, 80% results” more or less), you’ll start to see the appeal of Cypress. If your requirements ask for that last 20% of the result (cross-platform/cross-browser, cross-origin, multi-tab, etc.), no one is stopping you from picking up Selenium to cover the cases Cypress can’t address. (I’ve found that software testing has more to do with economics and ROI than software, but that’s a separate article)

In short: Cypress is about getting more ROI from your tests.

(Not to mention the powerful mocking abilities Cypress unlocks — personally love the network request-response mocking features)

Wouldn’t it be nice if you could get the same philosophy and powers when testing your mobile apps?
For Love
By: Q. Imagine
Tags: Poetry, Poems On Medium, Writing, Love, Poem

For Love

I Hope You Can Feel It…

Photo by Adrian Swancar on Unsplash

It’s amazing how I saw you

that night.

And it was like

the whole world stopped

when your eyes

said “Hello.”

Your gaze said

“Remember me.”

And let’s dance on life

through eternity.

I could cry a tear

for the love in your eyes.

As my once heart ache

turned into loving sighs.

I remember you,

a love

I do not know.

For without you,

I feel my heart

in a chokehold.

And the world thought

we were crazy.

I don’t know.

Maybe a little…

maybe.

With a cup of tea

and some laughs

on a high.

I’ll remember you

when I saw you

the first time.

Many lifetimes ago…
Helping Those Who Help Others — How We Updated This Nonprofit’s Site for Easier Use and Clearer Messaging
Tags: Web Design, Web Development, Marketing, Nonprofit, Digital Marketing

Helping Those Who Help Others — How We Updated This Nonprofit’s Site for Easier Use and Clearer Messaging Ideometry Follow Oct 20, 2017 · 3 min read

Simply put, CDA wants to make the world a better place, and they want to help others make the world a better place by ensuring their relief efforts do not have unintended negative consequences.

Through their website, CDA offers publications, case studies, toolkits and guides relating to areas such as Responsible Business and Conflict Sensitivity, but they also provide in-person advisory services and trainings to nonprofits, NGOs and corporations in these same areas of expertise.

The Problem

Though clients give glowing reviews of CDA’s services, people were less than enthusiastic about their website. Along with its outdated appearance and wordy subpages, the site was not user-friendly. For example, the search function for CDA’s publications, the main driver of traffic to the site, was very difficult to find and navigate.

Furthermore, CDA’s website did not reflect the recent restructuring of CDA’s organization, namely their Collaborative Learning branch and their Advisory Services.

The Solution

Ideometry conducted extensive interviews with current CDA employees as well as internal and external stakeholders to get an accurate understanding of what the exact needs were for the new website. We compiled this information to create a series of user journeys, and these user journeys guided the restructuring of CDA’s website.

The new website highlights those aspects of CDA users most want to see — the upcoming events, the recent publications, the blog posts — while educating them about new CDA project and service areas. It’s also extremely user-friendly, with mobile-compatibility, modern design and clear calls to action.

Most importantly, the back end of the website is user-friendly for CDA staff, so they can quickly update the content as needed. Ideometry even designed a new logo that CDA can use not only on its website, but on mailers, email headings and business cards.

***

If you liked what you saw here, check out some of the other branding and creative campaigns we’ve done for a major credit union and a BBQ catering startup.

Need help creating an amazing brand? Get in touch with us today.
The Ultimate List of the Best Productivity Resources
Tags: Apps, Productivity, Self Improvement, Advice, Personal Development

The Ultimate List of the Best Productivity Resources

Where the most productive people go to get the latest tips

What’s your go-to resource for all things productivity?

We asked, you answered.

And the best tips and tricks are now rounded up here, in one handy list. With blogs and podcasts to check out, people to follow, and apps to try, we’ve got the ultimate list of where to look when you’re in need of some solid productivity advice.

Blogs + News

Podcasts

Evernote Podcast — iTunes, SoundCloud, Overcast — Dive into the realms of achievement, entrepreneurship, and creative thinking

— iTunes, SoundCloud, Overcast — Dive into the realms of achievement, entrepreneurship, and creative thinking Cortex Podcast — Each episode, they get together to discuss their working lives

People

Apps + Tools + Approaches
Kreatives & soziales “Hotelprojekt” ausgezeichnet
By: Reinhard Lanner
Tags: Architektur, Hotel, Design

in In Fitness And In Health
You Belong Here
By: Megan Minutillo
Tags: Poetry, Poesía, Poetry On Medium, Encouragement, Self-awareness

You Belong Here

A poem

Photo by Noah Silliman on Unsplash

Yesterday, your heart broke

into a million pieces, and then

it broke into a million more.

And yet, you’re still here.

Yesterday, you cried enough

tears to fill all of the oceans

in this great big world.

And yet, you’re still here.

Yesterday, you threw your

hands up to the sky, and

held onto the lie that you’re

not strong enough to

withstand all of this.

And yet, you’re still here.

You’re still here.

You’re still here, with lungs

still breathing, and eyes still

blinking and tearing and seeing.

You’re still here, with tender

wounds and silver scars, and

a heart that has had a million

breaks, and yet, it continues

to beat.

You’re still here, with lessons

you’ve learned from this life that

you’re living, and a heart that can

continue to keep loving.

The world has tried to break

your spirit and steal your light.

And yet, you’re still here.

You belong here.
Manning Park Resort — March 6/20. Aging gracefully, and still skiing up a…
By: Jennifer Hammersmark
Tags: Outdoors, Exercise, Skiing, Vitamin D, Mental Health

Gord represents my inspiration for continuing to enjoy this sport. He is 77 years young. I love it!! He boasts having hit the magic number for the $25 pass: age 75. He actually resides in the Yukon, but spends his winters here as the snow is better for skiing. Very cool.

A fun fact about Gord is he has tried to ski the number of times each year to match his age. At age 65, he almost made it. He skied 63 times that season!! That is A LOT!!

I also loved something important that Gord had to say, which really mimics what I stand for, and why I even blog about skiing (as it relates to mental health, and getting outside):

Any time I have to stay in a big city for more than four or five days, I get what I call “Nature Deficit Disorder” [NDD]

A great expression, indeed! I think I will adopt it. In that vein, Gord also commented on another important fact that goes along with being active and outdoors in the winter. He noticed that if he does not get himself out and on the hill much during the winter, that in the off season “his tummy is a little larger” and his joints a little stiffer. He actually took up telemark skiing only about five years ago to increase his mobility (much to his wife’s chagrin). Anyway, Gord said that following a less active winter, he then has less ability to do the summer things that he enjoys, like hiking and such. This is such an important factor for all of us to embrace, with whatever sport/hobby we can engage in during the winter months.

Gord was also full of interesting historical information about Manning. For example, there is a run called Featherstone, which he said was named after Frank Featherstone. He skied here until he was 91! His wife also skied until she was 88 or 89. How spectacular is that?! Fun fact: apparently Frank was about 5 feet tall, and his wife about 4'6". I would say that makes things easier when you don’t have far to fall, lol.

With regards to Manning itself, I would highly recommend it! It only has two chairlifts (a brand new one last year), but covers a great deal of terrain. The landscape is very beautiful. I understand it is also common for Manning to have over 10 cm of fresh snow overnight on a regular basis. Lots of powder to be found!

Whether it is skiing, hiking, biking, running or walking-please get outside yourself! Your mental health will thank you. :)
7 Psychological Biases That Are Making You Resist Your Own Growth
By: Brianna Wiest
Tags: Growth Hacking, Life Lessons, Personal Development, Self Improvement, Psychology

Growth is hard.

Sometimes, it’s downright terrifying.

It requires us to take an honest look at ourselves, to abandon what we’ve known, and to suspend ourselves in uncertainty without knowing when we’ll ever find the next step.

It’s uncomfortable, but it’s also essential, because our brains and bodies are built to give preference to comfort, assimilation and familiarity.

What this is means is that we will remain what we have always been unless we consciously choose to become something else. Sure, everyone evolves and adapts over time, but if you aren’t intentional about it, you’ll end up the product of who and what is around you as opposed to an authentic expression of who you really are.

Growth is a required assignment.

The only question is when we do it, and how long it takes for us to realize that we often have to defy some of our instincts in order to create a better reality for ourselves.

Here are a few of those unconscious fears that prevent us from becoming all that we possibly can be, and how they might specifically be affecting you.

1. You don’t actually want to feel too much happiness.
“CHILD’S PLAY”
By: The Motor Tom
Tags: Childhood, Ncb Catalogue, Storytelling

play SimCity BuildIt for iPad. I play it so often, in fact, that it might be the thing I do most these days. It is not nearly as immersive and complex as past SimCity titles, but I nonetheless feel wanted, sometimes eve needed, and loved by the Sims who inhabit my city called Monteblo. Monteblo didn’t begin with my recent download of the game, though. No, Monteblo rose from a distant — and imaginary — location in the South Pacific around the time that puberty surged pimples through the pores of my skin.

Monteblo is a place that straddles time. There are books filled with graph paper pages on which are drawn the intricately detailed designs of Greek temples, and mayoral estates designed after Greek temples, structures that dapple the countrysides, suburbs and grand cities that make up the magical land. That same magical land is home to one of the States’ (Monteblo is a territory of the United States of America, of course, with voting rights) most successful collegiate sports programs: Deusis Testy. There are football and basketball cards with famous players’ pictures, heights and achievements on them. Among the most famous is of a player known simply by his surname: Frekmeiesy.

( frĕk • mī • ĕs • ē )

Frekmeiesy was a two-sport athlete who was bound to fall victim to his popularity. His name alone was enough to drive his Creator mad. It elicited smiles. Smiles from adoring fans, even smiles from opponents’ fans. Hell, Frekmeiesy’s appeal was so universal that his Creator’s Creators could hardly go a single moment without mentioning him!

And always with those smiles, those smiles that confessed simultaneous love and mockery. As his popularity grew his statistical output began to wilt. The hand of his creator pointed lightning bolts at him fierce enough to siphon the athletic ability from his joints. Game by game Frekmeiesy could but sit idle on the bench as other players stole the spotlight that was once his, players with normal names like Joe and Jack, Johnson and Franklin; players who could barely draw a glance from the home crowd much less smiles from the Creator’s Creators, no matter how high their shooting percentages!

The Creator had a soft heart. The Creator felt pain and bore great responsibility when Frekmeiesy struggled. Temporarily, Frekmeiesy was even removed from the basketball roster entirely. The Creator thought this would bring an end to Frekmeiesy’s front page fame. If only He, the Creator, could extinguish Frekmeiesy’s existence from memory, well then he’d… he’d…
Queerification: Stories with a Twist
By: James Finn
Tags: LGBTQ, Storytelling, Creative Non Fiction, Fiction, Poetry

by James Finn

Prism & Pen is so packed with queer treasure this week, I barely know where to begin. Our editor’s choices can’t highlight our best writing, because P&P writers have submitted so many GREAT stories. Abbie Drake joins Emma Holiday with critical perspectives on coming out as trans later in life. theoaknotes gives us a youthful trans/nonbinary perspective, and Ty Bo Yule spins a tale of queer Christmas camp from their days as a “baby butch.”

Also, expanding our emphasis on writing about art and artists, Bradley Wester and I go meta. I translate painful, controversial lyrics by French singer/songwriter Renaud, while Bradley digs into homoerotic paintings to explore homophobia with his straight artist friends.

All that and more, just below!

Editor’s Picks —

Creative Nonfiction

Pride Is the Antonym of Shame

Bradley Wester

Bradley and his visual artist friends have a tough but friendly dialogue about homophobia, pornography, and the nature of art that you won’t want to miss.
Masturbating during a work meeting is sexual harassment.
By: Andrea González-Ramírez
Tags: Journalism, Politics, Sexual Harrassment, Workplace

What is it with men whipping their dicks out uninvited? We learned Monday that the New Yorker suspended Jeffrey Toobin for masturbating during a Zoom work meeting. A rift has since opened among media types, between those who rightly condemn Toobin’s actions, and those who defend him by claiming “everyone” masturbates and there are “graver sins” than what he did.

But masturbating during a work meeting is not accidental, or something “everyone” does. It is sexual harassment. Consider this: Why didn’t he go to the bathroom? Toobin was deliberate in his actions, and has only apologized for thinking his camera was off.

These apologists are wrong. By jerking off during the meeting, Toobin created a hostile work environment and should face the consequences.
12 Ways to Fix Your User Interview Questions
By: Slava Shestopalov
Tags: Design, User Experience, UX, UX Research, Ts

In my practice, there were a lot of cases when people said they liked something but were reluctant to pay for it or utilize it later on. So, is there any method to make sure that a product or separate feature will be of high demand when implemented?

The interviewer asks a hypothetical question and opens the door to subjectivity

I cannot recall anything more relevant than referring to people’s experiences and examples of similar behavior from the past. For example, if your users don’t have a habit of saving articles for later in all their news apps, what is the chance they’ll start doing it in your app? As Jakob Nielsen said, “Users spend most of their time on other sites.”

Let’s recap:

Avoid starting your questions with “would you,” “how probable is that,” and “what if there was.”

Try to find out if a person has had an equivalent experience.

Pitfall 2. Closed questions

Closed questions appear from a natural human wish to be approved and gain support. However, in the interviews, they aren’t that useful. A yes-or-no question doesn’t provoke reserved people to talk and doesn’t help much to reveal their motives and way of thinking.
8 AutoML Libraries to Automate Machine Learning Pipeline
By: Satyam Kumar
Tags: Artificial Intelligence, Machine Learning, Data Science, Education, Automl

8 AutoML Libraries to Automate Machine Learning Pipeline

Overview of various AutoML frameworks

(Image by Author)

Automated Machine Learning (AutoML) helps in automating some critical components of the machine learning pipeline. This machine learning pipeline consists of data understanding, data engineering, feature engineering, model training, hyperparameter tuning, model monitoring, etc.

(Image by Author), Data Collection (Blue), Data Preparation (Green), Modeling (Orange), Deployment (Pink)

In an end-to-end machine learning project, the complexity of each aspect of the pipeline is dependent on the project. Generally, most of the time is spent on and data preparation and modeling. To automate the machine learning pipeline AutoML frameworks come into the picture.

In this article, you can read about 8 open-sourced autoML libraries or frameworks:
My Top 3 Poets to Watch in 2020
By: Keara Lou
Tags: Top 3, Writing, Writers On Medium, New Year, Poetry

They’re all as new as me

Photo by Thought Catalog on Unsplash

I love poetry. I love the way it sounds, the way it moves, everything about it. I like to dabble in poetry, too.

However, my poetry is child’s play compared to the poetry I’ve seen from these poets on here. As with my last Top 3 article, all of them have been on Medium since 2019. Everything I’ve read from them has been amazing.

These poets deserve all the love they can get.

This one’s a no-brainer. Jenny Justice started in Medium the same month I joined. Her poetry exploded on Medium, and I’ve been following her ever since. Once I find some extra money, I plan on buying her book as well.

Here is my favorite one of her poems. It’s about watching a monk in a Buddist temple. Beautifully written.

I found her by accident one day while looking at different articles in Facebook groups. When she’s not writing poetry, she’s writing about times with her son and mental health.

One of my favorite things about poetry is the many different ways it can be interpreted. With my favorite poem of hers, I see it as someone tired of the constant one-night stands. Someone else can look at it and see something completely different. It makes poetry beautiful in that sense.

I’ve stumbled upon her recently. I haven’t read as much of her poetry as I have the others, but everything I’ve read so far has been excellent. I’m excited to see what she does with her work in 2020.

My favorite poem of hers is about relating to James in the story of James and the Giant Peach. It surprises me how small things can make us relate to different characters in the stories we read.

And that is my Top 3 poets to watch for 2020. So far, their poetry has been excellent, and I can’t wait to see what they come up within the next year. I’ll be looking forward to reading anything they have out there.