<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Spire Digital | Kin + Carta</title>
    <description>The latest articles on Forem by Spire Digital | Kin + Carta (@spiredigitalco).</description>
    <link>https://forem.com/spiredigitalco</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F176382%2F36e6d447-a6a6-408c-8ba9-241f2c80f588.jpg</url>
      <title>Forem: Spire Digital | Kin + Carta</title>
      <link>https://forem.com/spiredigitalco</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/spiredigitalco"/>
    <language>en</language>
    <item>
      <title>Gung Ho Predictions About the Future of AI: UX, Psychology, and Advertising</title>
      <dc:creator>Spire Digital | Kin + Carta</dc:creator>
      <pubDate>Mon, 26 Aug 2019 14:55:53 +0000</pubDate>
      <link>https://forem.com/spiredigitalco/gung-ho-predictions-about-the-future-of-ai-ux-psychology-and-advertising-j8n</link>
      <guid>https://forem.com/spiredigitalco/gung-ho-predictions-about-the-future-of-ai-ux-psychology-and-advertising-j8n</guid>
      <description>&lt;p&gt;Current State of AI and AdTech&lt;/p&gt;

&lt;p&gt;Let’s face it- AI probably already knows you better than most of your friends.&lt;/p&gt;

&lt;p&gt;As you surf the web for news and insight, AI is learning what you like to read, how long you like to read for, and it probably even knows if you’re one of those people who reads articles with your mouse cursor.&lt;/p&gt;

&lt;p&gt;And with that information that AI learns, companies are turning a profit. AI software like Google Ads and Facebook Ads select advertisements to show you based upon your habits.&lt;/p&gt;

&lt;p&gt;And I believe these AI are only going to become more advanced...&lt;/p&gt;

&lt;p&gt;To view this entire article, go to the url below: &lt;a href="https://www.spiredigital.com/views/the-future-of-ai-ux-psychology-and-advertising/"&gt;https://www.spiredigital.com/views/the-future-of-ai-ux-psychology-and-advertising/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>machinelearning</category>
      <category>ux</category>
      <category>devops</category>
    </item>
    <item>
      <title>API Integration with Stripe Webhooks Using Ngrok</title>
      <dc:creator>Spire Digital | Kin + Carta</dc:creator>
      <pubDate>Tue, 13 Aug 2019 16:04:51 +0000</pubDate>
      <link>https://forem.com/spiredigitalco/working-with-stripe-webhooks-using-ngrok-39hm</link>
      <guid>https://forem.com/spiredigitalco/working-with-stripe-webhooks-using-ngrok-39hm</guid>
      <description>&lt;p&gt;DISCLAIMER: ngrok is a paid service. This blog post is not sponsored by or affiliated with ngrok in any way. &lt;/p&gt;

&lt;p&gt;What are Stripe Webhooks?&lt;br&gt;
Recently, I worked on a project that involved taking payments using Stripe. Not having worked with Stripe before, I imagined a fairly straightforward process of setting up API calls to Stripe to handle what we needed. Turns out, while that is part of the equation, Stripe also offers a powerful feature called webhooks.&lt;/p&gt;

&lt;p&gt;Webhooks are just a fancy name for API calls made from Stripe to your application. So now we have a two-way street of communication: it's not just our app talking to Stripe, Stripe is also talking back. This is just what we needed for our use-case.&lt;/p&gt;

&lt;p&gt;We decided to use Stripe's Checkout feature, which sends users to Stripe to input their payment information and then Stripe redirects them back to our app. This allowed us to skip the hassle of integrating the Stripe payment form directly on our site. When the payment is completed, Stripe sends a webhook event to our app so we can process the order. Once that's done, our app returns a 200 response code to Stripe and our user gets redirected to our app's order success page.&lt;/p&gt;

&lt;p&gt;Now, this all sounds great, but when we're developing, our local server can't accept requests via the internet. After all, the server only exists on our local machine- it's not on the public internet. So what can we do? We have to find a way to allow our local development server to be accessible via the internet. This is where ngrok comes to the rescue.&lt;/p&gt;

&lt;p&gt;Using Ngrok in a Docker Development Environment&lt;br&gt;
Ngrok is a service that provides a public URL through which one can access a local development server. When we run the ngrok software on our development machine, it creates a tunnel that routes incoming requests to that public URL to our local server. In our case, our development environment is set up with Docker, so it required a tiny bit more work to configure. Let's get started.&lt;/p&gt;

&lt;p&gt;Download the ngrok client binary&lt;br&gt;
Go to the download page on the ngrok site. We're going to be running ngrok inside a Linux Docker container, so download the Linux binary regardless of your machine's OS. For this example, we're going to put our ngrok-related files in a directory called ngrok in our project.&lt;/p&gt;

&lt;p&gt;Configure ngrok&lt;br&gt;
Create a configuration file called ngrok.conf with the following contents:&lt;br&gt;
web_addr: 0.0.0.0:4040&lt;br&gt;
authtoken: &lt;br&gt;
log: stdoutYour ngrok authentication token is available in the ngrok dashboard under the "Auth" section. The web_addr line allows us to open the ngrok web inspector in our browser. The log line allows us to see the ngrok log when we run docker-compose logs ngrok.&lt;br&gt;
Note: ngrok says to use the ngrok authtoken command to set the token. This would work fine if we were running ngrok on our host machine. Since we're running ngrok in a Docker container, we're going to set the token in a configuration file instead.&lt;/p&gt;

&lt;p&gt;Configure a new container for ngrok with Docker Compose&lt;br&gt;
We're using Docker Compose to set up our development environment, so adding an additional container for running ngrok is a breeze. Add the following lines to your docker-compose.yml under the services sectionngrok:&lt;br&gt;
image: nginx&lt;br&gt;
volumes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;./ngrok:/code/
command: /code/ngrok http : --subdomain= -config=/code/ngrok.conf
links:&lt;/li&gt;
&lt;li&gt;php
ports:&lt;/li&gt;
&lt;li&gt;4040:4040In the above configuration,  should be replaced by the name of the Docker Compose service that is running your application server. The --subdomain flag is an option if you have a paid account, which allows you to reserve one or more subdomains that, combined with ngrok.io, create your public URL. Without this option, ngrok will create a random URL for you each time it runs. (ngrok docs) As an example, say my service is called php, the app listens on port 8000, and the subdomain is eriks-app. The line would then look like:command: /code/ngrok http php:8000 --subdomain=eriks-app config=/code/ngrok.conf&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Build and run the ngrok container&lt;br&gt;
Use docker-compose up ngrok to build and run this new container. To verify that ngrok is running, go to localhost:4040 in your browser and you should see the ngrok web inspector.Congratulations! ngrok is up and running and now requests to your public URL will be routed to your local app server. You can test by opening the public URL in your browser or using CURL to make an API request to your app.Now that we have ngrok running and our public URL, all we have to do is configure the service that is providing our webhooks (Stripe, in our case) to use the ngrok public URL as the application URL.&lt;/p&gt;

&lt;p&gt;Going Forward with Stripe&lt;br&gt;
Using this setup, I was not only able to easily work with Stripe Webhooks, but also, by my simply sharing the new docker-compose.yml and ngrok-related files, the other developers on my team were able to just run docker-compose up and quickly have ngrok ready to go, without needing to download the binary or deal with any configuration themselves. We were then all able to continue with our Stripe integration work using webhooks.&lt;/p&gt;

</description>
      <category>docker</category>
      <category>stripe</category>
      <category>api</category>
      <category>ngrok</category>
    </item>
    <item>
      <title>Google’s Flutter the Next Big UI Framework in Mobile App Development?</title>
      <dc:creator>Spire Digital | Kin + Carta</dc:creator>
      <pubDate>Mon, 01 Jul 2019 16:42:36 +0000</pubDate>
      <link>https://forem.com/spiredigitalco/google-s-flutter-the-next-big-ui-framework-in-mobile-app-development-4ei7</link>
      <guid>https://forem.com/spiredigitalco/google-s-flutter-the-next-big-ui-framework-in-mobile-app-development-4ei7</guid>
      <description>&lt;p&gt;As of 2018, Google’s brand was valued at over $120 billion. This means that when Google does something, anything, a lot of people pay close attention.&lt;/p&gt;

&lt;p&gt;In 2017, Google caught the attention of the world after disrupting the mobile app development industry and introducing a new UI framework called Flutter. The framework allows for the portable development of native apps from a single codebase and has already been used to develop a number of apps.&lt;/p&gt;

&lt;p&gt;The most exciting part about Flutter may not the framework itself. Popular frameworks like Bootstrap, Foundation, and Milligram are not lacking in interface and capability. Flutter’s hype most likely comes from one single fact: it’s managed by Google.&lt;/p&gt;

&lt;p&gt;GOOGLE, DART, AND MOBILE APPS&lt;/p&gt;

&lt;p&gt;Google has a strong background in mobile-app development. They have created a number of successful mobile apps like Google Maps, and Google Wallet. But why would they decide to create Flutter?&lt;/p&gt;

&lt;p&gt;Google’s creation of a UI framework should actually come as no surprise to anyone since Google’s Dart language first appeared seven years ago. Dart is the language used in Flutter development, and also the language used in Google Ads and Google Greentea.&lt;/p&gt;

&lt;p&gt;Flutter Vs Bootstrap, Foundation, and Other UI Frameworks&lt;/p&gt;

&lt;p&gt;Now that you’re more educated about Flutter, it’s time to help you decide whether it is worth trying. What better company to help you than a 20+ year-old software development firm?&lt;/p&gt;

&lt;p&gt;To compare these various frameworks we’ll compare client lists of notable applications to be built on these frameworks, to date. Obviously, Flutter is at a disadvantage because it has not been around very long. But Flutter has already been used to build a number of notable apps by companies other than Google.&lt;/p&gt;

&lt;p&gt;BOOTSTRAP&lt;br&gt;
Instacart&lt;br&gt;
Grocery delivery app&lt;br&gt;
Vogue&lt;br&gt;
Fashion content/news app&lt;/p&gt;

&lt;p&gt;FOUNDATION&lt;br&gt;
Facebook&lt;br&gt;
Social media platform&lt;br&gt;
Ebay&lt;br&gt;
eCommerce app&lt;br&gt;
Netflix&lt;br&gt;
Video streaming platform&lt;/p&gt;

&lt;p&gt;FLUTTER&lt;br&gt;
Alibaba&lt;br&gt;
eCommerce app&lt;br&gt;
Tencent (QQ, WeChat, Qzone, and more)&lt;br&gt;
A variety of apps&lt;/p&gt;

&lt;p&gt;THE VERDICT ON FLUTTER&lt;/p&gt;

&lt;p&gt;In such a short period of time Flutter has accrued a lot of press for a reason. For one, Google uses Dart and Flutter to create their own mobile applications. It’s important to note that mobile app development takes time. There could be more Flutter apps in the works and we just don’t know about them yet.&lt;/p&gt;

&lt;p&gt;Regardless, one should note the very strong client list of Foundation. Foundation has a great list of clients of organizations not included in the above client list, like National Geographic, Pixar, and Yahoo.&lt;/p&gt;

&lt;p&gt;GOOGLE’S FUTURE AS A MOBILE APP DEVELOPER&lt;/p&gt;

&lt;p&gt;It’s clear that Google wants to be relied upon by everyone from Marketers to Developers with the introduction of tools like Google Ads, Google Optimize, and now, Flutter. But what’s next for Google? Will all of their software remain free? For now, all we can do is speculate as to what they will develop next and react to the times. Are acquisitions a possibility? Will they team up with rival Amazon?&lt;/p&gt;

</description>
      <category>google</category>
      <category>mobile</category>
      <category>webdev</category>
      <category>ui</category>
    </item>
    <item>
      <title>99 Questions UX Designers Must Ask</title>
      <dc:creator>Spire Digital | Kin + Carta</dc:creator>
      <pubDate>Wed, 05 Jun 2019 17:40:28 +0000</pubDate>
      <link>https://forem.com/spiredigitalco/99-questions-ux-designers-must-ask-1gbe</link>
      <guid>https://forem.com/spiredigitalco/99-questions-ux-designers-must-ask-1gbe</guid>
      <description>&lt;p&gt;For a UX Designer, it’s easier when you start with answers, instead of questions.&lt;/p&gt;

&lt;p&gt;The ability to ask meaningful questions is a fundamental yet often overlooked skill in the UX Designer’s toolkit. I’ve begun to notice a clear correlation between the number of questions a designer asks throughout the process and the quality of the final design output.&lt;/p&gt;

&lt;p&gt;It’s much more than creating, it’s about understanding your problem so well that the solution is obvious.&lt;/p&gt;

&lt;p&gt;In order to understand the challenge at hand, UX Designers must ask great questions at every stage of the process. I’ve catalogued a robust list (98 to be exact) of questions that I’ve found to be useful for our projects spanning industries, devices, and personas. While by no means comprehensive, it should provide a framework for design thinking through different stages of a project.&lt;/p&gt;

&lt;p&gt;Kickoff Meeting&lt;/p&gt;

&lt;p&gt;In order to align the delivery team and stakeholders around the vision and project plan, the big questions need to be asked. Avoid jumping to solutions, instead focus on the underlying problems and insights that can give the team foundational knowledge to design from later.&lt;/p&gt;

&lt;p&gt;-What is the problem or need we are aiming to solve?&lt;br&gt;
-What does the application need to do?&lt;br&gt;
-What is the business opportunity? (e.g. acquisition, activation, retention, revenue, referral, etc.)&lt;br&gt;
-What are the Key Performance Indicators (KPIs)?&lt;br&gt;
-How else will we define success for this project?&lt;br&gt;
-Who are the users or customers?&lt;br&gt;
-Why is this important to them?&lt;br&gt;
-Why do they care?&lt;br&gt;
-What are the users trying to do?&lt;br&gt;
-What are their pain points?&lt;br&gt;
-How can we reach users through this design process?&lt;br&gt;
-Are there any constraints (technological, business, etc.)?&lt;br&gt;
-How are we better than our competitors?&lt;br&gt;
-Are there any relevant products we can look at?&lt;br&gt;
-Who are the primary decision makers on this project?&lt;br&gt;
-Do brand guidelines exist?&lt;br&gt;
-Does a style guide exist?&lt;/p&gt;

&lt;p&gt;Stakeholder Interviews&lt;/p&gt;

&lt;p&gt;Further understand the business and market by speaking with individuals who who have a vested interest in the organization and the project. Many of these questions can be asked during kickoffs, but if asked individually they can yield better answers.&lt;/p&gt;

&lt;p&gt;-What is your role in this project?&lt;br&gt;
-What is the one thing we must get right to make this project worth undertaking?&lt;br&gt;
-How will you, personally, define success for this project?&lt;br&gt;
-What is the role of this project in achieving that success?&lt;br&gt;
-What are the goals you need to achieve from this project?&lt;br&gt;
-What have you tried that has/hasn’t worked?&lt;br&gt;
-What went wrong in that case?&lt;br&gt;
-Who are the biggest competitors and what worries you about them?&lt;br&gt;
-How do you expect to differentiate this product?&lt;br&gt;
-Where do you want the product to be in the next year, 5 years?&lt;br&gt;
-What keeps you up at night with regards to your users?&lt;br&gt;
-What assumptions do you think you are making about your users?&lt;br&gt;
-What do you know for sure about your users?&lt;br&gt;
-What are the most common problems your users face?&lt;br&gt;
-What worries you about this project?&lt;/p&gt;

&lt;p&gt;User Research&lt;/p&gt;

&lt;p&gt;Avoid the risk and expense of creating something users don’t want by first understanding their goals and pain points. Answers to these questions can give you the all important “why” behind user behavior. These are best supplemented with observational findings (what users say and do can be different) and analytics if they exist.&lt;/p&gt;

&lt;p&gt;The Context&lt;/p&gt;

&lt;p&gt;-What does your typical weekday look like?&lt;br&gt;
-Tell me about your role at your company.&lt;br&gt;
-What are your daily responsibilities?&lt;br&gt;
-What are some of the apps and websites you use the most?&lt;/p&gt;

&lt;p&gt;The Problem&lt;/p&gt;

&lt;p&gt;-How do you currently go about [problem/task]?&lt;br&gt;
-Are you looking for a solution or alternative for [problem/task]?&lt;br&gt;
-Tell me about the last time you tried to [problem/task].&lt;br&gt;
-What are you currently doing to make this [problem/task] easier?&lt;br&gt;
-Have you tried any work-arounds to help you with this?&lt;br&gt;
-Have you tried any other products or tools?&lt;br&gt;
-If so, how did you hear about them?&lt;br&gt;
-What’s the most frustrating part about [problem/task]?&lt;br&gt;
-How often do you encounter/perform [problem/task]?&lt;br&gt;
-How long do you spend on [problem/task]?&lt;/p&gt;

&lt;p&gt;User Testing&lt;/p&gt;

&lt;p&gt;Validate your assumptions and improve the experience by watching real users interact with your prototype or product. While this is to mostly gather qualitative feedback, there are opportunities to supplement these findings with qualitative answers (e.g. testing against success metrics).&lt;/p&gt;

&lt;p&gt;First Impressions&lt;/p&gt;

&lt;p&gt;-What is your first reaction to this?&lt;br&gt;
-What is going through your mind as you look at this?&lt;br&gt;
-How does this compare to your expectations?&lt;br&gt;
-What can you do here?&lt;br&gt;
-What is this for?&lt;br&gt;
-Do you have any questions right now?&lt;br&gt;
-Why would someone use this?&lt;br&gt;
-How do you think this is going to help you?&lt;br&gt;
-What is the first thing you would do?&lt;/p&gt;

&lt;p&gt;Task Focused&lt;/p&gt;

&lt;p&gt;-If you wanted to perform [task], what would you do?&lt;br&gt;
-What would you expect to happen?&lt;br&gt;
-What parts of this were the most/least important for you?&lt;br&gt;
-How could we present the information in a more meaningful way?&lt;br&gt;
-Is there anything you would change/add/remove to make this better for you?&lt;br&gt;
-What was the hardest part about this?&lt;br&gt;
-Was there anything surprising or unexpected?&lt;br&gt;
-On a scale of 1–5, how [adjective] was this?&lt;/p&gt;

&lt;p&gt;Summary&lt;/p&gt;

&lt;p&gt;-Would you use this today?&lt;br&gt;
-What might keep people from using this?&lt;br&gt;
-What is the most you would be willing to pay for this?&lt;br&gt;
-What, if anything, do you like or dislike?&lt;br&gt;
-If you had a magic wand, what would you change?&lt;br&gt;
-Does this feel like it was designed for you?&lt;br&gt;
-Is anything missing?&lt;br&gt;
-What adjectives would you use to describe this?&lt;br&gt;
-On a scale of 1–5, how likely or unlikely would you be to recommend this to a friend?&lt;br&gt;
-Since this isn’t finished, what would you like to see in the final version?&lt;/p&gt;

&lt;p&gt;Design Reviews&lt;/p&gt;

&lt;p&gt;Conducted with fellow designers or the larger project team, design reviews can ensure the “whys” behind design decisions align with user and business goals. Ask these questions to to better understand how a designer arrived at their solution. Good design requires intentionality.&lt;/p&gt;

&lt;p&gt;Overall&lt;/p&gt;

&lt;p&gt;-What part of this design are you looking for feedback on?&lt;br&gt;
-What constraints are you working within?&lt;/p&gt;

&lt;p&gt;Interaction Design&lt;/p&gt;

&lt;p&gt;-What is the user trying to accomplish on this screen?&lt;br&gt;
-What problem is this solving?&lt;br&gt;
-How could this design fail?&lt;br&gt;
-How did you arrive at this solution?&lt;br&gt;
-What’s the simpler version of this?&lt;br&gt;
-Is there anything we can remove?&lt;br&gt;
-What assumptions are you making?&lt;br&gt;
-Why is that there?&lt;br&gt;
-Why is that shown at all?&lt;br&gt;
-Is that worth displaying by default?&lt;br&gt;
-Why is the screen organized this way?&lt;br&gt;
-Why is this a better solution than [established design pattern]?&lt;/p&gt;

&lt;p&gt;Visual Design&lt;/p&gt;

&lt;p&gt;-What is your type hierarchy?&lt;br&gt;
-What UI patterns are you using?&lt;br&gt;
-What rules have you defined for these patterns?&lt;br&gt;
-Are there opportunities to be more consistent?&lt;br&gt;
-What are your margin and padding rules?&lt;br&gt;
-What rules have you defined for the color palette?&lt;/p&gt;

&lt;p&gt;Stakeholders Reviews&lt;/p&gt;

&lt;p&gt;Receive feedback from stakeholders that is clear, relevant, and helpful. They’re probably not experts in giving design feedback, so it’s your responsibility to ask questions that steer the feedback towards project goals and areas they are subject matter experts in.&lt;/p&gt;

&lt;p&gt;-Does this solve your users’ needs?&lt;br&gt;
-Does this effectively address [project goal(s)]?&lt;br&gt;
-Does this meet all functional requirements?&lt;br&gt;
-Does this effectively reflect the brand?&lt;br&gt;
-Why is [design request] important?&lt;/p&gt;

&lt;p&gt;Parting thoughts&lt;/p&gt;

&lt;p&gt;Follow questions with a healthy dose of “why?” or “tell me more about that”.&lt;br&gt;
Learn what you don’t know.&lt;br&gt;
Think of a product you love. Then think of the great questions the design team had to ask to arrive at that solution.&lt;/p&gt;

</description>
      <category>devops</category>
      <category>design</category>
      <category>ux</category>
      <category>dev</category>
    </item>
  </channel>
</rss>
