art Más pasos por día se relaciona con reducciones significativas de la diabetes y la hipertensión arterial By newsroom.heart.org Published On :: Thu, 05 Mar 2020 21:00:00 GMT Puntos destacados de la investigación: Los adultos de mediana edad que caminaron una mayor cantidad de pasos al día mostraron un 43% menos de riesgo de padecer diabetes y un 31% menos de riesgo de hipertensión arterial, en comparación con personas de... Full Article
art Brain emotional activity linked to blood vessel inflammation in recent heart attack patients By newsroom.heart.org Published On :: Tue, 05 May 2020 14:00:00 GMT Research Highlights: People with recent heart attacks have significantly higher activity in a brain area (the amygdala) involved in stress perception and emotional response. They also have more inflammation in key arteries and increased bone marrow ... Full Article
art The new Boston Tea Party Museum By Published On :: Tour of the new boston Tea Party museum Full Article
art Application deadline extended for college scholarships and school grants from American Heart Association’s school-based programs By newsroom.heart.org Published On :: Tue, 14 Apr 2020 15:00:00 GMT DALLAS, April 14, 2020 – The American Heart Association has extended the deadline for individual scholarships and school grants offered through Kids Heart Challenge and American Heart Challenge to June 30. As schools nationwide moved to remote learning,... Full Article
art Caregiving from a distance: how to help loved ones with heart failure amid COVID-19 By newsroom.heart.org Published On :: Thu, 23 Apr 2020 13:00:00 GMT DALLAS, April 23, 2020 — As social distancing keeps families apart, many who care for a parent or loved one with heart failure may be left wondering how to best keep them safe. In the United States, more than 6 million people are living with heart... Full Article
art Patient perspective: Living with type 2 diabetes and heart disease amid COVID-19 By newsroom.heart.org Published On :: Thu, 23 Apr 2020 14:15:00 GMT DALLAS and ARLINGTON, April 23, 2020 — As emerging science around COVID-19 highlights elevated danger for people with diabetes, heart disease and stroke[1], the American Heart Association and the American Diabetes Association urge people living with type... Full Article
art 12 scientific teams redefining fast-tracked heart and brain health research related to COVID-19 By newsroom.heart.org Published On :: Thu, 30 Apr 2020 17:53:13 GMT Full Article
art The American Heart Association asks your help to support the 120M people in the U.S. living with cardiovascular disease who may be at higher risk of complications from COVID-19 By newsroom.heart.org Published On :: Mon, 04 May 2020 17:30:00 GMT DALLAS, May 4, 2020 — Tomorrow, on #GivingTuesdayNow, a global day of philanthropic action to address the COVID-19 pandemic, the American Heart Association – the leading global public health organization devoted to a world of longer healthier lives – is... Full Article
art Scheduling surgery, COVID-19 risks and more: What heart valve patients need to know By newsroom.heart.org Published On :: Tue, 05 May 2020 20:35:00 GMT DALLAS, May 5, 2020 — An estimated five million patients in the United States live with heart valve disease, and many have had upcoming valve repair surgery rescheduled due to the COVID-19 pandemic. The American Heart Association, along with 14 North... Full Article
art Antonio Petrucelli’s Maps (Edes Harrison & Artzybasheff) By makingmaps.net Published On :: Mon, 03 Feb 2020 17:54:15 +0000 Antonio Petrucelli’s name is probably unfamiliar to map people, although it shouldn’t be. Petrucelli was one of the artists whose work was commonly found on the cover (and inside) Fortune magazine from the 1930s through the 1950s. Petrucelli collaborated with Richard Edes Harrison and was a contemporary of Boris Artzybasheff. Like Edes Harrison and Artzybasheff, […] Full Article 09 Map Symbolization Map History
art 7 Online Business Ideas That You Can Start With Just WordPress Plugins By feedproxy.google.com Published On :: Thu, 19 Mar 2020 09:06:03 +0000 As the time passes by, the online businesses are growing rapidly with the support of already available online business platforms, plugins etc. And to Achieve the same, WordPress is much louder than anything else around to fulfill the required online business existence without any boundaries and limitations.... The post 7 Online Business Ideas That You Can Start With Just WordPress Plugins appeared first on SmashingApps.com. Full Article Best of the Web Business Education and Learning Frameworks and Platforms Uncategorized Web Applications
art 5 Things You Should Keep in Mind Before Starting a Website By feedproxy.google.com Published On :: Fri, 24 Apr 2020 22:19:29 +0000 Starting a website can be a fun journey for some of the tech wizards out there, and a relative nightmare for the rest of us. So before you take a leap of faith and jump-start this project, there are a few things you need to keep in mind. 1. The aim matters This is where it all begins, your vision. What is your website about? What is it that you would like for your website to showcase? What is the call-to-action you hope your website’s visitors to make? As you answer the above questions, you will be able to utilize The post 5 Things You Should Keep in Mind Before Starting a Website appeared first on Photoshop Lady. Full Article 3D Effect UI Design
art Get Started With CSS3 Transitions Today By feedproxy.google.com Published On :: Mon, 07 Jan 2013 17:00:48 +0000 Transitions (basic animations) are one of the most popular additions in CSS3, and one of the easiest to implement for big gains on your site. A transition is simply an animation from one set of CSS properties to another. So for example; whilst before you may have had links with blue text, which suddenly turned orange when you hovered on them, you would now replace that sudden jump with a more graceful animation. In this post, we'll look at the basic syntax, step through some examples, and finally take a brief look at current browser support. Full Article Coding Animation CSS CSS3 Design
art Weird Kafka-Style Anatomies, Fantastic Creatures And Fancies Chart By Camille Renversades By feedproxy.google.com Published On :: Mon, 04 May 2020 11:59:14 +0000 Fantastic creatures and fancies chart by Camille Renversade, French chimérologist. Inspired by the old school boards, like the old Deyrolle... Full Article Inspirations anatomy creatures fantastic retro
art This Art Collective Creates Concepts That Have Emerged From The Coronavirus Pandemic By feedproxy.google.com Published On :: Mon, 04 May 2020 12:41:52 +0000 The Coronavirus is changing our relation to each other and affecting our perception of reality. This virus is very democratic:... Full Article Technology care coronavirus masks medics personal protecting safe
art Artist Dan Lam Crafts Colorful Art Of Neon Drips, Blobs, And Squishes By feedproxy.google.com Published On :: Tue, 05 May 2020 13:10:32 +0000 Born in the Philippines in 1988, artist Dan Lam cultivates upon our incessant yet human interest in the oddities of... Full Article Design blobs colorful installations neon
art Artist Makes Cardboard Cutouts With Pandemic Jokes To Lighten This Difficult Time By feedproxy.google.com Published On :: Wed, 06 May 2020 11:28:05 +0000 Gotcha! According to John Marshall: “I draw on sheets of cardboard and pose with them at sunset. I call them... Full Article Design cardboard coronavirus cutouts isolation
art 14 New Stunning Coronavirus-Themed Street Art Works From Around The World By feedproxy.google.com Published On :: Fri, 08 May 2020 12:24:44 +0000 A mother and her child are reflected as they pass a mural by artist FAKE, titled “Super Nurse”, paying tribute... Full Article Inspirations coronavirus epidemic streetart world
art This Family Uses Chalk Art To Go On Adventures During The Lockdown By feedproxy.google.com Published On :: Sat, 09 May 2020 13:38:25 +0000 Quarantine might have trapped us inside the shells of our houses; however, some people are finding ways to escape the... Full Article Photography adventures family lockdown quarantine
art In 1898, Revolutionary French Artist Toulouse-Letrec Went To The Toilet On A Beach, His Friend Took These Photographs By feedproxy.google.com Published On :: Sat, 09 May 2020 14:15:14 +0000 In 1898, Maurice Joyant took four photographs of his childhood friend Henri Marie Raymond de Toulouse-Lautrec Montfa, better known Toulouse-Letrec... Full Article Photography 1890s beach france painter Toulouse-Letrec
art Family Of Romanian Photographer Moved To A Small Town In The UK And He Started Discovering The Beauty Of This Country By feedproxy.google.com Published On :: Sat, 09 May 2020 14:32:48 +0000 According to Aurel Paduraru: “I am a Romanian photographer and traveler. Last year, my wife, our five-year-old son, and I... Full Article Photography landscapes romania UK
art Exquisite Realistic Paintings By Russian Artist Serge Marshennikov By feedproxy.google.com Published On :: Sat, 09 May 2020 15:07:47 +0000 Serge Marshennikov is a Russian artist born was born in 1971 in Ufa (Bashkiria, USSR). His grandfather was a general... Full Article Inspirations female portraits realistic sensual women
art UNI football position preview: Will McElvain entrenched as No. 1 quarterback By feedproxy.google.com Published On :: Sun, 03 May 2020 14:41:57 PDT CEDAR FALLS — A four-way quarterback competition dominated the preseason headlines for Northern Iowa last August. Walk-on redshirt freshman Will McElvain emerged as the competition’s... Full Article UNI Panthers
art Best sports movies: ‘Caddyshack’ is a part of our vocabulary By feedproxy.google.com Published On :: Wed, 06 May 2020 09:58:21 PDT Editor’s note: The Gazette sports staff has compiled lists of its top 15 favorite sports movies. Each day, a different staffer will share some insight into one of their favorites. Some of them... Full Article Sports
art Iowa’s Gary Barta says college football could be on a ‘dimmer switch’ when it returns By feedproxy.google.com Published On :: Thu, 07 May 2020 16:36:14 PDT Iowa athletics director Gary Barta began Thursday’s meeting of the UI’s presidential committee on athletics with two numbers: It’s been 56 days since the coronavirus pandemic shut... Full Article Iowa Football
art Bowen Born itching to start basketball career at UNI By feedproxy.google.com Published On :: Sat, 09 May 2020 06:11:25 PDT CEDAR FALLS — Like many high school seniors across the country, Norwalk’s Bowen Born is unsure when he’ll be able to get on campus at the University of Northern Iowa and begin... Full Article UNI Panthers
art How to Start Selling Subscriptions Online By feedproxy.google.com Published On :: Fri, 13 Mar 2020 14:58:43 +0000 WooCommerce provides everything you need to start selling subscriptions online, make sales, and grow successfully. Learn how to get started in just 6 steps! The post How to Start Selling Subscriptions Online appeared first on WooCommerce. Full Article Blog
art Special Offer: Start Selling Online with WooCommerce and GoDaddy for Just $1 By feedproxy.google.com Published On :: Tue, 21 Apr 2020 00:20:16 +0000 Start selling online fast with WooCommerce & GoDaddy! Launch in just 4 steps & receive premium support, marketing tools, and over $1,000 in free extensions! The post Special Offer: Start Selling Online with WooCommerce and GoDaddy for Just $1 appeared first on WooCommerce. Full Article Blog
art How Your Offline Business Can Start Selling Online Fast By feedproxy.google.com Published On :: Thu, 23 Apr 2020 17:44:34 +0000 Need to start selling online fast? Create an online store in just 5 steps. Sell products, offer virtual services, & add new revenue for years to come! The post How Your Offline Business Can Start Selling Online Fast appeared first on WooCommerce. Full Article Blog
art How Four Food Businesses Started Selling Online During COVID-19 By feedproxy.google.com Published On :: Tue, 28 Apr 2020 15:00:00 +0000 From no store to 800 orders per day — see how 4 stores successfully moved their business online during COVID-19 to stay open and save jobs. The post How Four Food Businesses Started Selling Online During COVID-19 appeared first on WooCommerce. Full Article Blog
art Many anticipated arts, cultural events delayed or canceled By feedproxy.google.com Published On :: Thu, 07 May 2020 10:51:10 PDT Summer is going to look a bit different in the Corridor this year as many, long-cherished events are being canceled or postponed. And the organizations that run those events want you to know they... Full Article Business
art Kenneth Robert Martin By feedproxy.google.com Published On :: Fri, 08 May 2020 20:23:26 PDT KENNETH ROBERT MARTINIowa CityKenneth Robert Martin, our loving father and mentor, paddled off from the dock for the last time on May 8, 2020, joining Raymond and Inez, his parents, brother, Arnold, and dear wife, Alice on the big lake.He leaves behind many stories of a life well-lived that will be retold in our family for generations. Among them: Just after World War II, he was stationed in Guam as an Army Air Corps staff sergeant, where he adopted a stray dog. Unwilling to abandon the pup after the tour was over, he smuggled him aboard ship in a duffle bag, which was discovered by brass before reaching Hawaii. Though denial of on-shore leave in Honolulu was the consequence, dad didn't forsake the dog, and after the pair crossed the ocean together they lived happily in Gary, Ind., for many years. Such is the compassion, devotion and fortitude (and mischievousness!) Ken would demonstrate over and over in his life. While we will miss his warmth and humor terribly, his legacy is plain to see in his children, grandchildren and great-grandchildren. We are nature lovers as Ken was. We turn over rocks just to see what lies beneath as he taught. We gaze at the stars with the same awe and wonder he showed us. We bless him for these gifts, which will never be forgotten. To share a thought, memory or condolence with his family, please visit the funeral home website at www.gayandciha.com. Full Article Obituaries
art Political Cartoon By www.thegazette.com Published On :: Tue, 5 May 2020 08:18:44 -0400 Full Article Political Cartoon
art Political Cartoon By www.thegazette.com Published On :: Wed, 6 May 2020 08:02:21 -0400 Full Article Political Cartoon
art Phinney: County needs common sense, smarter government By www.thegazette.com Published On :: Wed, 6 May 2020 11:43:05 -0400 I have been a Johnson County resident since 1977. I grew up in Clear Lake, a small farming community in North Central Iowa. I came to Iowa City after being recruited by Dan Gable to wrestle for the University of Iowa Hawkeye wrestling team and placed 3rd place in the 1980 NCAA Division I.I met my wife Teresa and we settled in Iowa City. I have two children, Melissa, 36, and Anthony, 25; and grandchildren Emma, 9, Ellie and Emilia, 4-month-old twin girls, and Jack, who passed two just before his 2nd birthday. I am a cancer survivor and support cancer research and patient support. I was a maintenance supervisor at the old Cantebury Inn, I owned and operated Advance Property Management for 23 years and drove a school bus for First Student, Inc. While working at First Student I was one of the driving forces in the campaign for the workers to unionize with the Teamsters. I was asked to join the Teamsters as a full-time organizer after the campaign, which I did for 13 years. I found my calling as an organizer because I was able to help others stand up for themselves and really change their lives. I made the decision to run for Johnson County supervisor because we need to bring some common sense back to Johnson County government, and run a smarter government that works for all. The supervisors need to oversee the county departments better to stop wasting county funds paying settlements to individuals because of illegal action by department employees. Rules are for everyone and if you work outside the rules there will be costs and consequences.I want to bring new blood to the board as well as new ideas. County supervisor is a public service position of honor and trust. Being a supervisor is about following through on jobs you were elected to do for the people. The supervisors need to finish jobs that they started but never completed. You should never leave a job half done!I hope the voters agree the Johnson County Board of Supervisors need to answer to the public for their actions and their employees. We can no long just “sweep issues under the rug.” Dean Phinney is a candidate in the Democratic primary for Johnson County Board of Supervisors. Full Article Guest Columnist
art Political Cartoon By www.thegazette.com Published On :: Thu, 7 May 2020 09:01:59 -0400 Full Article Political Cartoon
art WordPress Multisite Masterclass: Getting Started By feedproxy.google.com Published On :: Fri, 29 Sep 2017 04:50:00 +0000 Multisite is a powerful tool that will help you create a network of sites to fulfill a variety of purposes, and which you can customize to make life easier for your users and help your network run more efficiently and make you money. Full Article Miscellaneous masterclass multisite pro starter
art Arthemia Premuim By feedproxy.google.com Published On :: Fri, 01 May 2020 18:12:07 +0000 Arthemia Premium is a magazine style theme that unleashes the power of WordPress, transforming it into a simple-yet-powerful CMS with the automatic thumbnail generation feature. A nice and elegant blend of a blog and a magazine. With numerous built-in features, Arthemia Premium will convert your old-fashioned WordPress blog into an amazing and powerful front-end. If […] The post Arthemia Premuim appeared first on WPCult. Full Article Premium Arthemia Premium CMS Colorlabs Project Magazine Theme Premium Theme
art Useful articles for beginers to start a blog right By feedproxy.google.com Published On :: Sat, 09 May 2020 18:09:05 +0000 Darren Rowse from Pro Blogger wrote a great article of a collection of different article to get the beginning blogger of his/her feet. Head over and check this one out! The post Useful articles for beginers to start a blog right appeared first on WPCult. Full Article Cult blogging tips Darren Rowse problogger
art Many anticipated arts, cultural events delayed or canceled By feedproxy.google.com Published On :: Thu, 07 May 2020 10:51:10 PDT Summer is going to look a bit different in the Corridor this year as many, long-cherished events are being canceled or postponed. And the organizations that run those events want you to know they aren’t any more happy about it than you are.The organizers of these events are having to make unprecedented, tough decisions.“Cancellation is not a good word in our business,” said Chuck Swanson, Building a Legacy executive director of Hancher. “It is something that we really don’t want to do and it takes a lot for us to come to that. “We live for the live performance and bringing the artists and audiences together. That’s the happiest time for me, so none of these decisions have been easy.”Hancher has had to cancel numerous upcoming events in the past few months that would have brought to Iowa City in artists from all over the country and the world. It also is holding off announcing its upcoming season — which it typically would be doing at this time of year. this isn’t something the staff has faced since the floods of 2008 and because they book events so far in advance they are confronting additional challenges.“You know there’s so much that goes into a show before it happens,” Swanson said. “I just think of all the anticipation, booking the artists, advancing the show, setting ticket prices, advertising and then ticket sales. “It’s like a farmer who does all this work to get his crops ready and then at the end of the season ends up with nothing to harvest.” He noted Hancher has been reaching out to its booked performers and, in some cases, have had performers reach out to them to cancel upcoming shows. The significant time and resources that go into planning large-scale events is the main factor in necessitating cancellation discussions and decisions at many organizations. “Many logistical items have to be coordinated, from renting shuttles to scheduling volunteers and staff. Initial planning for some events begins as early as 12 to 18 months in advance and proceeds all the way up to the day of the event,” said John Myers, Indian Creek Nature Center executive director. Citing the center’s annual Maple Syrup Festival, he noted food represents a significant cost and often cannot be saved or reused. “We have had to be mindful of the financial resources available to us and ensure that we wisely manage those to ensure (the center) can emerge from this pandemic as a functioning and healthy organization,” he said.“None of the decisions to cancel events or how to handle subsequent financial losses are easy and they challenge everyone,” Myers added. “As our whole lives have been upended, it makes even the simplest of decisions harder and that takes an impact on morale.”He acknowledged staff members aren’t the only ones feeling the strain. “We have a significant core of volunteers who are no longer able to give their time, which also creates a strain on morale and increases the amount of work that needs to be done when we return,” he pointed out.Another primary factor is what is allowed and considered safe by the city, state and Iowa Department of Public Health. “At this point, only allowing groups of 10 or less is a far cry from the thousands or people we usually see at the Iowa Arts Festival,” said Lisa Barnes, executive director of Summer of the Arts in Iowa City, which produces the Iowa Arts Festival. “The governor has announced that reopening the state will be done in stages, and based on what we’ve found from other events around the country, concerts and large festivals will be the last to open,” he noted.Summer of the Arts announced just last week that the Iowa Arts Festival would not take place this year, a month in advance of the event. “We needed to make a decision so that we can move forward with alternative plans,” Barnes said, noting the organization has had questions about the Iowa City Jazz Festival, scheduled for July 3 through 5 and added a decision regarding that festival and July programming will be made by mid-late May. “We also needed to make the decision far enough out to be able to work with our performers and cancel the agreements,” she said.On Wednesday, Gov. Kim Reynolds loosened some but not all of the social-distancing restrictions for the remaining 22 counties she had put in place. HeartbrokenDiscussions about the future of these events have been happening for weeks for many organizations, highlighting they are not taken lightly. Carissa Johnson, executive director of the Cedar Rapids Freedom Festival, said conversations about the future of this year’s event started in mid-March, right around the time the Cedar Rapids SaPaDaPaSo Parade announced its cancellation for 2020.“We plan year ’round for the two- to three-week festival,” Johnson explained. “Our planning really ramps up in April and May, and we have many more costs associated with producing the festival the closer we get to the start. In order to protect our time and resources, we elected to cancel before we had more costs and variables to consider.”As for who is making the final decision, organizations said many stakeholders are involved. Barnes said the decision on the Iowa City Arts Festival, for example, included staff, the board of directors, festival planning committees, the city of Iowa City and Johnson County Public Health, along with input from some of the vendors, artists and performers.Tapping into experts in those public health field has been key as well. “We have these assets, people, at the University (of Iowa), that have been really helpful as we make these decisions about canceling and as we prepare to think about reopening,” Hancher’s Swanson said.The Freedom Festival include staff and board members in discussions, with recommendations from Linn County Public Health and the city of Cedar Rapids, factoring in the health, safety and well-being of the community. “We are just as heartbroken as the rest of the community, but this decision was to protect our community as much as possible,” Swanson said.“This community is a family and we will all get through this together and come back stronger next year.”Myers noted organizations such as the Indian Creek Nature Center are also rely on advice from national associations, such as the American Alliance of Museums, and discussions among the leadership of many local cultural groups. “For many events, we have also reached out to participants to gather their input and comfort level of attending once we are able to reopen,” Myers said.The financial effects of having to cancel is stressful for organizations, too. “Financially, this has been a hard time for the Nature Center to endure,” Myers pointed out. “We’ve had over 100 different programs, events and facility rentals canceled between March 15 and April 30, and our losses are currently over $250,000. As we approach the summer, there are a number of other events we continue to review, including our popular summer camps.”The Nature Center has postponed a national conference to be held there in September — due to indications of low participation — for peers from around the nation who run not-for-profit and government nature centers. “We are losing thousands of dollars in vendor fees and sales receipts because we had to cancel,” said Barnes, of Summer of the Arts. “We have sponsors tied to certain events, like the Iowa Arts Festival, that in some cases want to carry over their support to next year, which impacts our fundraising for this year and next.” She noted her group already has been made aware of funding that won’t be coming in from some sponsors next year due to the financial impact those organizations are facing as well. And that can be tough. “When we cancel, our whole staff is involved — from the box audience and public engagement folks to the technical production team and our front-of-house staff,” Swanson said. “Our communication is key in talking through it all and then sharing clear messages with our audiences, especially in terms of refunds. But we’ve been encouraged by so many generous friends of Hancher donating their ticket purchase price back to us.”While disappointment still is thick in the air, organizations don’t plan to abandon their missions and is keeping an eye on serving the public. “This is a challenging time for everyone, and our board and staff is committed to finding creative and non-traditional solutions to ensure the Freedom Festival’s return,” Johnson said. “The community and our stakeholders have been tremendous supports of the Freedom Festival and we believe they will continue to do so in the future. “We ask for understanding and patience as we try to navigate this crisis and what we can still provide for our community.”Freedom Festival buttons will be sold this year as they’ve already been made, and “It’s a way the community can show their support,” Johnson said. Barnes agreed and noted the Iowa Arts Festival committee is working on ways to support the performers, artists and vendors they had scheduled by trying to develop some virtual opportunities for engagement.While the show, or events, might not go on, organizers said they very much want to remain connected to their audiences and attendees. “I want to make sure everybody knows we care about them and that we’re trying to find ways to stay connected because I think we’re all in this together and the arts are one of the best ways for people to get through difficult times,” Swanson said. Myers agreed. “Indian Creek Nature Center will be ready to welcome guests and visitors back to our events as soon as we are able to do so safely,” he said.“In the meantime, we hope everyone finds peace in nature by taking a hike or bike ride, having a picnic or just enjoying time outside.” Full Article Business
art Markdown Comes Alive! Part 1, Basic Editor By feedproxy.google.com Published On :: Wed, 26 Feb 2020 08:00:00 -0500 In my last post, I covered what LiveView is at a high level. In this series, we’re going to dive deeper and implement a LiveView powered Markdown editor called Frampton. This series assumes you have some familiarity with Phoenix and Elixir, including having them set up locally. Check out Elizabeth’s three-part series on getting started with Phoenix for a refresher. This series has a companion repository published on GitHub. Get started by cloning it down and switching to the starter branch. You can see the completed application on master. Our goal today is to make a Markdown editor, which allows a user to enter Markdown text on a page and see it rendered as HTML next to it in real-time. We’ll make use of LiveView for the interaction and the Earmark package for rendering Markdown. The starter branch provides some styles and installs LiveView. Rendering Markdown Let’s set aside the LiveView portion and start with our data structures and the functions that operate on them. To begin, a Post will have a body, which holds the rendered HTML string, and title. A string of markdown can be turned into HTML by calling Post.render(post, markdown). I think that just about covers it! First, let’s define our struct in lib/frampton/post.ex: defmodule Frampton.Post do defstruct body: "", title: "" def render(%__MODULE{} = post, markdown) do # Fill me in! end end Now the failing test (in test/frampton/post_test.exs): describe "render/2" do test "returns our post with the body set" do markdown = "# Hello world!" assert Post.render(%Post{}, markdown) == {:ok, %Post{body: "<h1>Hello World</h1> "}} end end Our render method will just be a wrapper around Earmark.as_html!/2 that puts the result into the body of the post. Add {:earmark, "~> 1.4.3"} to your deps in mix.exs, run mix deps.get and fill out render function: def render(%__MODULE{} = post, markdown) do html = Earmark.as_html!(markdown) {:ok, Map.put(post, :body, html)} end Our test should now pass, and we can render posts! [Note: we’re using the as_html! method, which prints error messages instead of passing them back to the user. A smarter version of this would handle any errors and show them to the user. I leave that as an exercise for the reader…] Time to play around with this in an IEx prompt (run iex -S mix in your terminal): iex(1)> alias Frampton.Post Frampton.Post iex(2)> post = %Post{} %Frampton.Post{body: "", title: ""} iex(3)> {:ok, updated_post} = Post.render(post, "# Hello world!") {:ok, %Frampton.Post{body: "<h1>Hello world!</h1> ", title: ""}} iex(4)> updated_post %Frampton.Post{body: "<h1>Hello world!</h1> ", title: ""} Great! That’s exactly what we’d expect. You can find the final code for this in the render_post branch. LiveView Editor Now for the fun part: Editing this live! First, we’ll need a route for the editor to live at: /editor sounds good to me. LiveViews can be rendered from a controller, or directly in the router. We don’t have any initial state, so let's go straight from a router. First, let's put up a minimal test. In test/frampton_web/live/editor_live_test.exs: defmodule FramptonWeb.EditorLiveTest do use FramptonWeb.ConnCase import Phoenix.LiveViewTest test "the editor renders" do conn = get(build_conn(), "/editor") assert html_response(conn, 200) =~ "data-test="editor"" end end This test doesn’t do much yet, but notice that it isn’t live view specific. Our first render is just the same as any other controller test we’d write. The page’s content is there right from the beginning, without the need to parse JavaScript or make API calls back to the server. Nice. To make that test pass, add a route to lib/frampton_web/router.ex. First, we import the LiveView code, then we render our Editor: import Phoenix.LiveView.Router # … Code skipped ... # Inside of `scope "/"`: live "/editor", EditorLive Now place a minimal EditorLive module, in lib/frampton_web/live/editor_live.ex: defmodule FramptonWeb.EditorLive do use Phoenix.LiveView def render(assigns) do ~L""" <div data-test=”editor”> <h1>Hello world!</h1> </div> """ end def mount(_params, _session, socket) do {:ok, socket} end end And we have a passing test suite! The ~L sigil designates that LiveView should track changes to the content inside. We could keep all of our markup in this render/1 method, but let’s break it out into its own template for demonstration purposes. Move the contents of render into lib/frampton_web/templates/editor/show.html.leex, and replace EditorLive.render/1 with this one liner: def render(assigns), do: FramptonWeb.EditorView.render("show.html", assigns). And finally, make an EditorView module in lib/frampton_web/views/editor_view.ex: defmodule FramptonWeb.EditorView do use FramptonWeb, :view import Phoenix.LiveView end Our test should now be passing, and we’ve got a nicely separated out template, view and “live” server. We can keep markup in the template, helper functions in the view, and reactive code on the server. Now let’s move forward to actually render some posts! Handling User Input We’ve got four tasks to accomplish before we are done: Take markdown input from the textarea Send that input to the LiveServer Turn that raw markdown into HTML Return the rendered HTML to the page. Event binding To start with, we need to annotate our textarea with an event binding. This tells the liveview.js framework to forward DOM events to the server, using our liveview channel. Open up lib/frampton_web/templates/editor/show.html.leex and annotate our textarea: <textarea phx-keyup="render_post"></textarea> This names the event (render_post) and sends it on each keyup. Let’s crack open our web inspector and look at the web socket traffic. Using Chrome, open the developer tools, navigate to the network tab and click WS. In development you’ll see two socket connections: one is Phoenix LiveReload, which polls your filesystem and reloads pages appropriately. The second one is our LiveView connection. If you let it sit for a while, you’ll see that it's emitting a “heartbeat” call. If your server is running, you’ll see that it responds with an “ok” message. This lets LiveView clients know when they've lost connection to the server and respond appropriately. Now, type some text and watch as it sends down each keystroke. However, you’ll also notice that the server responds with a “phx_error” message and wipes out our entered text. That's because our server doesn’t know how to handle the event yet and is throwing an error. Let's fix that next. Event handling We’ll catch the event in our EditorLive module. The LiveView behavior defines a handle_event/3 callback that we need to implement. Open up lib/frampton_web/live/editor_live.ex and key in a basic implementation that lets us catch events: def handle_event("render_post", params, socket) do IO.inspect(params) {:noreply, socket} end The first argument is the name we gave to our event in the template, the second is the data from that event, and finally the socket we’re currently talking through. Give it a try, typing in a few characters. Look at your running server and you should see a stream of events that look something like this: There’s our keystrokes! Next, let’s pull out that value and use it to render HTML. Rendering Markdown Lets adjust our handle_event to pattern match out the value of the textarea: def handle_event("render_post", %{"value" => raw}, socket) do Now that we’ve got the raw markdown string, turning it into HTML is easy thanks to the work we did earlier in our Post module. Fill out the body of the function like this: {:ok, post} = Post.render(%Post{}, raw) IO.inspect(post) If you type into the textarea you should see output that looks something like this: Perfect! Lastly, it’s time to send that rendered html back to the page. Returning HTML to the page In a LiveView template, we can identify bits of dynamic data that will change over time. When they change, LiveView will compare what has changed and send over a diff. In our case, the dynamic content is the post body. Open up show.html.leex again and modify it like so: <div class="rendered-output"> <%= @post.body %> </div> Refresh the page and see: Whoops! The @post variable will only be available after we put it into the socket’s assigns. Let’s initialize it with a blank post. Open editor_live.ex and modify our mount/3 function: def mount(_params, _session, socket) do post = %Post{} {:ok, assign(socket, post: post)} end In the future, we could retrieve this from some kind of storage, but for now, let's just create a new one each time the page refreshes. Finally, we need to update the Post struct with user input. Update our event handler like this: def handle_event("render_post", %{"value" => raw}, %{assigns: %{post: post}} = socket) do {:ok, post} = Post.render(post, raw) {:noreply, assign(socket, post: post) end Let's load up http://localhost:4000/editor and see it in action. Nope, that's not quite right! Phoenix won’t render this as HTML because it’s unsafe user input. We can get around this (very good and useful) security feature by wrapping our content in a raw/1 call. We don’t have a database and user processes are isolated from each other by Elixir. The worst thing a malicious user could do would be crash their own session, which doesn’t bother me one bit. Check the edit_posts branch for the final version. Conclusion That’s a good place to stop for today. We’ve accomplished a lot! We’ve got a dynamically rendering editor that takes user input, processes it and updates the page. And we haven’t written any JavaScript, which means we don’t have to maintain or update any JavaScript. Our server code is built on the rock-solid foundation of the BEAM virtual machine, giving us a great deal of confidence in its reliability and resilience. In the next post, we’ll tackle making a shared editor, allowing multiple users to edit the same post. This project will highlight Elixir’s concurrency capabilities and demonstrate how LiveView builds on them to enable some incredible user experiences. Full Article Code Back-end Engineering
art A Viget Glossary: What We Mean and Why it Matters - Part 1 By feedproxy.google.com Published On :: Tue, 21 Apr 2020 08:00:00 -0400 Viget has helped organizations design and develop award-winning websites and digital products for 20 years. In that time, we’ve been lucky to create long-term relationships with clients like Puma, the World Wildlife Fund, and Privia Health, and, throughout our time working together, we’ve come to understand each others’ unique terminology. But that isn’t always the case when we begin work with new clients, and in a constantly-evolving industry, we know that new terminology appears almost daily and organizations have unique definitions for deliverables and processes. Kicking off a project always initiates a flurry of activity. There are contracts to sign, team members to introduce, and new platforms to learn. It’s an exciting time, and we know clients are anxious to get underway. Amidst all the activity, though, there is a need to define and create a shared lexicon to ensure both teams understand the project deliverables and process that will take us from kickoff to launch. Below, we’ve rounded up a few terms for each of our disciplines that often require additional explanation. Note: our definitions of these terms may differ slightly from the industry standard, but highlight our interpretation and use of them on a daily basis. User ExperienceResearchIn UX, there is a proliferation of terms that are often used interchangeably and mean almost-but-subtly-not the same thing. Viget uses the term research to specifically mean user research — learning more about the users of our products, particularly how they think and behave — in order to make stronger recommendations and better designs. This can be accomplished through different methodologies, depending on the needs of the project, and can include moderated usability testing, stakeholder interviews, audience research, surveys, and more. Learn more about the subtleties of UX research vocabulary in our post on “Speaking the Same Language About Research”.WireframesWe use wireframes to show the priority and organization of content on the screen, to give a sense of what elements will get a stronger visual treatment, and to detail how users will get to other parts of the site. Wireframes are a key component of website design — think of them as the skeleton or blueprint of a page — but we know that clients often feel uninspired after reviewing pages built with gray boxes. In fact, we’ve even written about how to improve wireframe presentations. We remind clients that visual designers will step in later to add polish through color, graphics, and typography, but agreeing on the foundation of the page is an important and necessary first step. PrototypesDuring the design process, it’s helpful for us to show clients how certain pieces of functionality or animations will work once the site is developed. We can mimic interactivity or test a technical proof of concept by using a clickable prototype, relying on tools like Figma, Invision, or Principle. Our prototypes can be used to illustrate a concept to internal stakeholders, but shouldn’t be seen as a final approach. Often, these concepts will require additional work to prepare them for developer handoff, which means that prototypes quickly become outdated. Read more about how and when we use prototypes. Navigation Testing (Treejack Testing)Following an information architecture presentation, we will sometimes recommend that clients conduct navigation testing. When testing, we present a participant with the proposed navigation and ask them to perform specific tasks in order to see if they will be able to locate the information specified within the site’s new organization. These tests generally focus on two aspects of the navigation: the structure of the navigation system itself, and the language used within the system. Treejack is an online navigation testing tool that we like to employ when conducting navigation tests, so we’ll often interchange the terms “navigation testing” with “treejack testing”.Learn more about Viget’s approach to user experience and research. Full Article Strategy Process
art A Viget Glossary: What We Mean and Why It Matters - Part 2 By feedproxy.google.com Published On :: Tue, 28 Apr 2020 10:09:00 -0400 In my last post, I defined terms used by our UX team that are often confused or have multiple meanings across the industry. Today, I’ll share our definitions for processes and deliverables used by our design and strategy teams. Creative Brand Strategy In our experience, we’ve found that the term brand strategy is used to cover a myriad of processes, documents, and deliverables. To us, a brand strategy defines how an organization communicates who they are, what they do and why in a clear and compelling way. Over the years, we’ve developed an approach to brand strategy work that emphasizes rigorous research, hands-on collaboration, and the definition of problems and goals. We work with clients to align on a brand strategy concept and, depending on the client and their goals, our final deliverables can range to include strategy definition, audience-specific messaging, identity details, brand elements, applications, and more. Take a look at the brand strategy work we’ve done for Fiscalnote, Swiftdine, and Armstrong Tire. Content Strategy A content strategy goes far beyond the words on a website or in an app. A strong content strategy dictates the substance, structure, and governance of the information an organization uses to communicate to its audience. It guides creating, organizing, and maintaining content so that companies can communicate who they are, what they do, and why efficiently and effectively. We’ve worked with organizations like the Washington Speakers Bureau, The Nature Conservancy, the NFL Players Association, and the Wildlife Conservation Society to refine and enhance their content strategies. Still confused about the difference between brand and content strategy? Check out our flowchart. Style Guide vs. Brand Guidelines We often find the depth or fidelity of brand guidelines and style guides can vary greatly, and the terms can often be confused. When we create brand guidelines, they tend to be large documents that include in-depth recommendations about how a company should communicate their brand. Sections like “promise”, “vision”, “mission”, “values”, “tone”, etc. accompany details about how the brand’s logo, colors and fonts should be used in a variety of scenarios. Style guides, on the other hand, are typically pared down documents that contain specific guidance for organizations’ logos, colors and fonts, and don’t always include usage examples. Design System One question we get from clients often during a redesign or rebrand is, “How can I make sure people across my organization are adhering to our new designs?” This is where a design system comes into play. Design systems can range from the basic — e.g., a systematic approach to creating shared components for a single website — all the way to the complex —e.g., architecting a cross-product design system that can scale to accommodate hundreds of different products within a company. By assembling elements like color, typography, imagery, messaging, voice and tone, and interaction patterns in a central repository, organizations are able to scale products and marketing confidently and efficiently. When a design system is translated into code, we refer to that as a parts kit, which helps enforce consistency and improve workflow. Comps or Mocks When reviewing RFPs or going through the nitty-gritty of contracts with clients, we often see the terms mocks or comps used interchangeably to refer to the static design of pages or screens. Internally, we think of a mock-up as a static image file that illustrates proof-of-concept, just a step beyond a wireframe. A comp represents a design that is “high fidelity” and closer to what the final website will look like, though importantly, is not an exact replica. This is likely what clients will share with internal stakeholders to get approval on the website direction and what our front-end developers will use to begin building-out the site (in other words, converting the static design files into dynamic HTML, CSS, and JavaScript code). If you're interested in joining our team of creative thinkers and visual storytellers who bring these concepts to life for our clients, we’re hiring in Washington, D.C. Durham, Boulder and Chattanooga. Tune in next week as we decipher the terms we use most often when talking about development. Full Article Strategy Process
art Visa cancelled due to incorrect information given or provided to the Department of Home Affairs By feedproxy.google.com Published On :: Wed, 19 Feb 2020 05:56:21 +0000 It is a requirement that a visa applicant must fill in or complete his or her application form in a manner that all questions are answered, and no incorrect answers are given or provided. There is also a requirement that visa applicants must not provide incorrect information during interviews with the Minister for Immigration (‘Minister’), […] The post Visa cancelled due to incorrect information given or provided to the Department of Home Affairs appeared first on Visa Australia - Immigration Lawyers & Registered Migration Agents. Full Article Visa Cancellation 1703474 (Refugee) [2017] AATA 2985 cancel a visa cancelledvi sa Citizenship and Multicultural Affairs Department of Home Affairs migration act 1958 minister for immigration NOICC notice of intention to consider cancellation Sanaee (Migration) [2019] AATA 4506 section 109 time limits
art Markdown Comes Alive! Part 1, Basic Editor By feedproxy.google.com Published On :: Wed, 26 Feb 2020 08:00:00 -0500 In my last post, I covered what LiveView is at a high level. In this series, we’re going to dive deeper and implement a LiveView powered Markdown editor called Frampton. This series assumes you have some familiarity with Phoenix and Elixir, including having them set up locally. Check out Elizabeth’s three-part series on getting started with Phoenix for a refresher. This series has a companion repository published on GitHub. Get started by cloning it down and switching to the starter branch. You can see the completed application on master. Our goal today is to make a Markdown editor, which allows a user to enter Markdown text on a page and see it rendered as HTML next to it in real-time. We’ll make use of LiveView for the interaction and the Earmark package for rendering Markdown. The starter branch provides some styles and installs LiveView. Rendering Markdown Let’s set aside the LiveView portion and start with our data structures and the functions that operate on them. To begin, a Post will have a body, which holds the rendered HTML string, and title. A string of markdown can be turned into HTML by calling Post.render(post, markdown). I think that just about covers it! First, let’s define our struct in lib/frampton/post.ex: defmodule Frampton.Post do defstruct body: "", title: "" def render(%__MODULE{} = post, markdown) do # Fill me in! end end Now the failing test (in test/frampton/post_test.exs): describe "render/2" do test "returns our post with the body set" do markdown = "# Hello world!" assert Post.render(%Post{}, markdown) == {:ok, %Post{body: "<h1>Hello World</h1> "}} end end Our render method will just be a wrapper around Earmark.as_html!/2 that puts the result into the body of the post. Add {:earmark, "~> 1.4.3"} to your deps in mix.exs, run mix deps.get and fill out render function: def render(%__MODULE{} = post, markdown) do html = Earmark.as_html!(markdown) {:ok, Map.put(post, :body, html)} end Our test should now pass, and we can render posts! [Note: we’re using the as_html! method, which prints error messages instead of passing them back to the user. A smarter version of this would handle any errors and show them to the user. I leave that as an exercise for the reader…] Time to play around with this in an IEx prompt (run iex -S mix in your terminal): iex(1)> alias Frampton.Post Frampton.Post iex(2)> post = %Post{} %Frampton.Post{body: "", title: ""} iex(3)> {:ok, updated_post} = Post.render(post, "# Hello world!") {:ok, %Frampton.Post{body: "<h1>Hello world!</h1> ", title: ""}} iex(4)> updated_post %Frampton.Post{body: "<h1>Hello world!</h1> ", title: ""} Great! That’s exactly what we’d expect. You can find the final code for this in the render_post branch. LiveView Editor Now for the fun part: Editing this live! First, we’ll need a route for the editor to live at: /editor sounds good to me. LiveViews can be rendered from a controller, or directly in the router. We don’t have any initial state, so let's go straight from a router. First, let's put up a minimal test. In test/frampton_web/live/editor_live_test.exs: defmodule FramptonWeb.EditorLiveTest do use FramptonWeb.ConnCase import Phoenix.LiveViewTest test "the editor renders" do conn = get(build_conn(), "/editor") assert html_response(conn, 200) =~ "data-test="editor"" end end This test doesn’t do much yet, but notice that it isn’t live view specific. Our first render is just the same as any other controller test we’d write. The page’s content is there right from the beginning, without the need to parse JavaScript or make API calls back to the server. Nice. To make that test pass, add a route to lib/frampton_web/router.ex. First, we import the LiveView code, then we render our Editor: import Phoenix.LiveView.Router # … Code skipped ... # Inside of `scope "/"`: live "/editor", EditorLive Now place a minimal EditorLive module, in lib/frampton_web/live/editor_live.ex: defmodule FramptonWeb.EditorLive do use Phoenix.LiveView def render(assigns) do ~L""" <div data-test=”editor”> <h1>Hello world!</h1> </div> """ end def mount(_params, _session, socket) do {:ok, socket} end end And we have a passing test suite! The ~L sigil designates that LiveView should track changes to the content inside. We could keep all of our markup in this render/1 method, but let’s break it out into its own template for demonstration purposes. Move the contents of render into lib/frampton_web/templates/editor/show.html.leex, and replace EditorLive.render/1 with this one liner: def render(assigns), do: FramptonWeb.EditorView.render("show.html", assigns). And finally, make an EditorView module in lib/frampton_web/views/editor_view.ex: defmodule FramptonWeb.EditorView do use FramptonWeb, :view import Phoenix.LiveView end Our test should now be passing, and we’ve got a nicely separated out template, view and “live” server. We can keep markup in the template, helper functions in the view, and reactive code on the server. Now let’s move forward to actually render some posts! Handling User Input We’ve got four tasks to accomplish before we are done: Take markdown input from the textarea Send that input to the LiveServer Turn that raw markdown into HTML Return the rendered HTML to the page. Event binding To start with, we need to annotate our textarea with an event binding. This tells the liveview.js framework to forward DOM events to the server, using our liveview channel. Open up lib/frampton_web/templates/editor/show.html.leex and annotate our textarea: <textarea phx-keyup="render_post"></textarea> This names the event (render_post) and sends it on each keyup. Let’s crack open our web inspector and look at the web socket traffic. Using Chrome, open the developer tools, navigate to the network tab and click WS. In development you’ll see two socket connections: one is Phoenix LiveReload, which polls your filesystem and reloads pages appropriately. The second one is our LiveView connection. If you let it sit for a while, you’ll see that it's emitting a “heartbeat” call. If your server is running, you’ll see that it responds with an “ok” message. This lets LiveView clients know when they've lost connection to the server and respond appropriately. Now, type some text and watch as it sends down each keystroke. However, you’ll also notice that the server responds with a “phx_error” message and wipes out our entered text. That's because our server doesn’t know how to handle the event yet and is throwing an error. Let's fix that next. Event handling We’ll catch the event in our EditorLive module. The LiveView behavior defines a handle_event/3 callback that we need to implement. Open up lib/frampton_web/live/editor_live.ex and key in a basic implementation that lets us catch events: def handle_event("render_post", params, socket) do IO.inspect(params) {:noreply, socket} end The first argument is the name we gave to our event in the template, the second is the data from that event, and finally the socket we’re currently talking through. Give it a try, typing in a few characters. Look at your running server and you should see a stream of events that look something like this: There’s our keystrokes! Next, let’s pull out that value and use it to render HTML. Rendering Markdown Lets adjust our handle_event to pattern match out the value of the textarea: def handle_event("render_post", %{"value" => raw}, socket) do Now that we’ve got the raw markdown string, turning it into HTML is easy thanks to the work we did earlier in our Post module. Fill out the body of the function like this: {:ok, post} = Post.render(%Post{}, raw) IO.inspect(post) If you type into the textarea you should see output that looks something like this: Perfect! Lastly, it’s time to send that rendered html back to the page. Returning HTML to the page In a LiveView template, we can identify bits of dynamic data that will change over time. When they change, LiveView will compare what has changed and send over a diff. In our case, the dynamic content is the post body. Open up show.html.leex again and modify it like so: <div class="rendered-output"> <%= @post.body %> </div> Refresh the page and see: Whoops! The @post variable will only be available after we put it into the socket’s assigns. Let’s initialize it with a blank post. Open editor_live.ex and modify our mount/3 function: def mount(_params, _session, socket) do post = %Post{} {:ok, assign(socket, post: post)} end In the future, we could retrieve this from some kind of storage, but for now, let's just create a new one each time the page refreshes. Finally, we need to update the Post struct with user input. Update our event handler like this: def handle_event("render_post", %{"value" => raw}, %{assigns: %{post: post}} = socket) do {:ok, post} = Post.render(post, raw) {:noreply, assign(socket, post: post) end Let's load up http://localhost:4000/editor and see it in action. Nope, that's not quite right! Phoenix won’t render this as HTML because it’s unsafe user input. We can get around this (very good and useful) security feature by wrapping our content in a raw/1 call. We don’t have a database and user processes are isolated from each other by Elixir. The worst thing a malicious user could do would be crash their own session, which doesn’t bother me one bit. Check the edit_posts branch for the final version. Conclusion That’s a good place to stop for today. We’ve accomplished a lot! We’ve got a dynamically rendering editor that takes user input, processes it and updates the page. And we haven’t written any JavaScript, which means we don’t have to maintain or update any JavaScript. Our server code is built on the rock-solid foundation of the BEAM virtual machine, giving us a great deal of confidence in its reliability and resilience. In the next post, we’ll tackle making a shared editor, allowing multiple users to edit the same post. This project will highlight Elixir’s concurrency capabilities and demonstrate how LiveView builds on them to enable some incredible user experiences. Full Article Code Back-end Engineering
art A Viget Glossary: What We Mean and Why it Matters - Part 1 By feedproxy.google.com Published On :: Tue, 21 Apr 2020 08:00:00 -0400 Viget has helped organizations design and develop award-winning websites and digital products for 20 years. In that time, we’ve been lucky to create long-term relationships with clients like Puma, the World Wildlife Fund, and Privia Health, and, throughout our time working together, we’ve come to understand each others’ unique terminology. But that isn’t always the case when we begin work with new clients, and in a constantly-evolving industry, we know that new terminology appears almost daily and organizations have unique definitions for deliverables and processes. Kicking off a project always initiates a flurry of activity. There are contracts to sign, team members to introduce, and new platforms to learn. It’s an exciting time, and we know clients are anxious to get underway. Amidst all the activity, though, there is a need to define and create a shared lexicon to ensure both teams understand the project deliverables and process that will take us from kickoff to launch. Below, we’ve rounded up a few terms for each of our disciplines that often require additional explanation. Note: our definitions of these terms may differ slightly from the industry standard, but highlight our interpretation and use of them on a daily basis. User ExperienceResearchIn UX, there is a proliferation of terms that are often used interchangeably and mean almost-but-subtly-not the same thing. Viget uses the term research to specifically mean user research — learning more about the users of our products, particularly how they think and behave — in order to make stronger recommendations and better designs. This can be accomplished through different methodologies, depending on the needs of the project, and can include moderated usability testing, stakeholder interviews, audience research, surveys, and more. Learn more about the subtleties of UX research vocabulary in our post on “Speaking the Same Language About Research”.WireframesWe use wireframes to show the priority and organization of content on the screen, to give a sense of what elements will get a stronger visual treatment, and to detail how users will get to other parts of the site. Wireframes are a key component of website design — think of them as the skeleton or blueprint of a page — but we know that clients often feel uninspired after reviewing pages built with gray boxes. In fact, we’ve even written about how to improve wireframe presentations. We remind clients that visual designers will step in later to add polish through color, graphics, and typography, but agreeing on the foundation of the page is an important and necessary first step. PrototypesDuring the design process, it’s helpful for us to show clients how certain pieces of functionality or animations will work once the site is developed. We can mimic interactivity or test a technical proof of concept by using a clickable prototype, relying on tools like Figma, Invision, or Principle. Our prototypes can be used to illustrate a concept to internal stakeholders, but shouldn’t be seen as a final approach. Often, these concepts will require additional work to prepare them for developer handoff, which means that prototypes quickly become outdated. Read more about how and when we use prototypes. Navigation Testing (Treejack Testing)Following an information architecture presentation, we will sometimes recommend that clients conduct navigation testing. When testing, we present a participant with the proposed navigation and ask them to perform specific tasks in order to see if they will be able to locate the information specified within the site’s new organization. These tests generally focus on two aspects of the navigation: the structure of the navigation system itself, and the language used within the system. Treejack is an online navigation testing tool that we like to employ when conducting navigation tests, so we’ll often interchange the terms “navigation testing” with “treejack testing”.Learn more about Viget’s approach to user experience and research. Full Article Strategy Process
art A Viget Glossary: What We Mean and Why It Matters - Part 2 By feedproxy.google.com Published On :: Tue, 28 Apr 2020 10:09:00 -0400 In my last post, I defined terms used by our UX team that are often confused or have multiple meanings across the industry. Today, I’ll share our definitions for processes and deliverables used by our design and strategy teams. Creative Brand Strategy In our experience, we’ve found that the term brand strategy is used to cover a myriad of processes, documents, and deliverables. To us, a brand strategy defines how an organization communicates who they are, what they do and why in a clear and compelling way. Over the years, we’ve developed an approach to brand strategy work that emphasizes rigorous research, hands-on collaboration, and the definition of problems and goals. We work with clients to align on a brand strategy concept and, depending on the client and their goals, our final deliverables can range to include strategy definition, audience-specific messaging, identity details, brand elements, applications, and more. Take a look at the brand strategy work we’ve done for Fiscalnote, Swiftdine, and Armstrong Tire. Content Strategy A content strategy goes far beyond the words on a website or in an app. A strong content strategy dictates the substance, structure, and governance of the information an organization uses to communicate to its audience. It guides creating, organizing, and maintaining content so that companies can communicate who they are, what they do, and why efficiently and effectively. We’ve worked with organizations like the Washington Speakers Bureau, The Nature Conservancy, the NFL Players Association, and the Wildlife Conservation Society to refine and enhance their content strategies. Still confused about the difference between brand and content strategy? Check out our flowchart. Style Guide vs. Brand Guidelines We often find the depth or fidelity of brand guidelines and style guides can vary greatly, and the terms can often be confused. When we create brand guidelines, they tend to be large documents that include in-depth recommendations about how a company should communicate their brand. Sections like “promise”, “vision”, “mission”, “values”, “tone”, etc. accompany details about how the brand’s logo, colors and fonts should be used in a variety of scenarios. Style guides, on the other hand, are typically pared down documents that contain specific guidance for organizations’ logos, colors and fonts, and don’t always include usage examples. Design System One question we get from clients often during a redesign or rebrand is, “How can I make sure people across my organization are adhering to our new designs?” This is where a design system comes into play. Design systems can range from the basic — e.g., a systematic approach to creating shared components for a single website — all the way to the complex —e.g., architecting a cross-product design system that can scale to accommodate hundreds of different products within a company. By assembling elements like color, typography, imagery, messaging, voice and tone, and interaction patterns in a central repository, organizations are able to scale products and marketing confidently and efficiently. When a design system is translated into code, we refer to that as a parts kit, which helps enforce consistency and improve workflow. Comps or Mocks When reviewing RFPs or going through the nitty-gritty of contracts with clients, we often see the terms mocks or comps used interchangeably to refer to the static design of pages or screens. Internally, we think of a mock-up as a static image file that illustrates proof-of-concept, just a step beyond a wireframe. A comp represents a design that is “high fidelity” and closer to what the final website will look like, though importantly, is not an exact replica. This is likely what clients will share with internal stakeholders to get approval on the website direction and what our front-end developers will use to begin building-out the site (in other words, converting the static design files into dynamic HTML, CSS, and JavaScript code). If you're interested in joining our team of creative thinkers and visual storytellers who bring these concepts to life for our clients, we’re hiring in Washington, D.C. Durham, Boulder and Chattanooga. Tune in next week as we decipher the terms we use most often when talking about development. Full Article Strategy Process
art Coming Soon: Premium Blogstarter By www.wpthemedesigner.com Published On :: Sat, 09 Apr 2011 19:27:07 +0000 We’ve upgraded one of our most popular themes. The Blogstarter Theme has been one of our most popular themes from the beginning. Premium Blogstarter contains a modernized design with all the current features you’d expect like social media integration, widgetized footer, and much more. Here’s a preview of what is to come. The post Coming Soon: Premium Blogstarter appeared first on WP Theme Designer. Full Article Blog Premium Themes
art Premium Blogstarter By www.wpthemedesigner.com Published On :: Mon, 15 Aug 2011 17:29:13 +0000 The perfect theme for starters and advance bloggers. You'll definitely love using this Premium Blogstarter Theme! The post Premium Blogstarter appeared first on WP Theme Designer. Full Article Featured Premium Themes Themes
art Released: Premium BlogStarter Theme By www.wpthemedesigner.com Published On :: Tue, 16 Aug 2011 00:10:38 +0000 The Premium BlogStarter Theme gives a new spin to one of our more popular magazine style themes The Original BlogStarter Theme. The Premium BlogStarter Theme is SEO optimized, bursting with theme options and widgets, includes a easy customizable logo, multi level drop down menus and more. The post Released: Premium BlogStarter Theme appeared first on WP Theme Designer. Full Article Blog