Hingham web designers
Hello and welcome to this web designers Web Designer Hingham video tutorial.
I’m Owen Corso from Google.
And today, we’re going to build a rich media expandable creative with video.
Let’s start by selecting file, New File.
This opens a dialog box where we will set up our ad.
First, let’s make out high of project.
We have four options– The default is Display & Video 360so we will leave that as is.
Latest Dental Implants To Be Used
This reading list is for anyone who wants to learn or deepen their knowledge in the disciplines of User Research, Usability, Information Architecture, User-Interface Design, Interaction Design, Content Strategy or Experience Strategy.
The list is broad and includes books that exemplify design thinking, processes, methods, principles and best practices. Some of the books on this list are over 20 years old, yet still relevant more than ever.
There’s not a day where I don’t find myself applying the ideas from these books. Each has helped shaped the designer I am today, helped me advance my craft. I hope that you too, can extract the same value.
Last updated 09/10/2017
My Top Ten
- The Design of Everyday Things, Donald Norman
- About Face: The Essentials of Interaction Design, Alan Cooper
- The Elements of User Experience: User-Centered Design for the Web and Beyond, Jesse James Garrett
- The User Experience Team of One: A Research and Design Survival Guide, Leah Buley
- Manage Your Day-to-Day: Build Your Routine, Find Your Focus, and Sharpen Your Creative Mind, Jocelyn K. Glei, 99u
- A Practical Guide to Information Architecture, Donna Spencer
- Designing Together: The collaboration and conflict management handbook for creative professionals, Dan M. Brown
- Seductive Interaction Design: Creating Playful, Fun, and Effective User Experiences, Stephen Anderson
- 100 Things Every Designer Needs to Know About People, Susan Weinschenk
- Lean UX: Applying Lean Principles to Improve User Experience, Jeff Gothelf and Josh Seiden
More Must-Reads On Thinking, Methods, Principles and Best Practices
I find it helpful to choose what to read based on what’s relevant at the time. Applying what you’re reading, as you’re thinking and making is a great way to solidify concepts, reflect and learn.
Some old, some new. All important reading, in no particular order.
Last updated 09/10/2017
- The Shape of Design, Frank Chimero
- Mental Models: Aligning Design Strategy with Human Behavior, Indi Young
- Practical Empathy: For Collaboration and Creativity in Your Work, Indi Young
- Interviewing Users: How to Uncover Compelling Insights, Steve Portigal
- Designing Web Interfaces: Principles and Patterns for Rich Interactions, Bill Scott, Theresa Neil
- The Laws of Simplicity (Simplicity: Design, Technology, Business, Life), John Maeda
- Information Architecture for the World Wide Web: Designing for the Web and Beyond, Peter Morville, Louis Rosenfeld, Jorge Arango
- Sketching User Experiences: The Workbook, Saul Greenberg, Sheelagh Carpendale , Nicolai Marquardt, Bill Buxton
- Well Designed: How to Use Empathy to Create Products People Love, Jon Kolko
- Thoughts on Interaction Design, Jon Kolko
- Linchpin: Are You Indispensable?, Seth Godin
- Don’t Make Me Think AND Rocket Surgery Made Easy, Steve Krug
- Designing Interfaces, Jennifer Tidwell
- Handbook of Usability Testing: How to Plan, Design, and Conduct Effective Tests, Jeffrey Rubin, Dana Chisnell
- Designing Interactions, Bill Moggridge
- The Visual Display of Quantitative Information AND Envisioning Information, Edward R. Tufte
- A Project Guide to UX Design: For user experience designers in the field or in the making, Russ Unger & Carolyn Chandler
- Gamestorming: A Playbook for Innovators, Rulebreakers, and Changemakers, Dave Gray, Sunni Brown, James Macanufo
- The Mobile Frontier: A Guide for Designing Mobile Experiences, Rachel Hinman
- Design Is the Problem: The Future of Design Must be Sustainable, Nathan Shedroff
- Prototyping: A Practitioner’s Guide, Todd Zaki Warfel
- Making Meaning: How Successful Businesses Deliver Meaningful Customer Experiences, Steve Diller, Nathan Shedroff, Darrel Rhea
- Content Strategy for the Web, by Kristina Halvorson, Melissa Rach
- Just Enough Research, Erika Hall
- Design Is A Job, Mike Monteiro
- Designing for Emotion, Aaron Walter
- Creative Workshop: 80 Challenges to Sharpen Your Design Skills, David Sherwin
- Letting Go of The Words: Writing Web Content that Works, Janice (Ginny) Redish
- Designing the Obvious: A Common Sense Approach to Web Application Design, Robert Hoekman Jr
- Designing the Moment: Web Interface Design Concepts in Action, Robert Hoekman Jr
- Designing for the Social Web, Joshua Porter
- Undercover User Experience Design, Cennydd Bowles, James Box
- Product Design for the Web: Principles of Designing and Releasing Web Products, Randy Hunt
- Designing the User Interface: Strategies for Effective Human-Computer Interaction, by Ben Shneiderman, Catherine Plaisant, Maxine Cohen, Steven Jacobs
- This is Service Design Thinking: Basics, Tools, Cases, Marc Stickdorn, Jakob Schneider
- Resonate: Present Visual Stories That Transform Audiences, Nancy Duarte
- Metaskills: 5 Talents for the Robotic Age, Marty Neumeier
- The Brand Gap: How to Bridge the Distance Between Business Strategy and Design, Marty Neumeier
- Getting Real AND Rework, 37 Signals, Jason Fried, David Heinemeier Hansson
- The Humane Interface: New Directions for Designing Interactive Systems, Jef Raskin
- Simple and Usable Web, Mobile, and Interaction Design, Giles Colborne
- Search Patterns: Design for Discovery, Peter Morville, Jeffery Callender
- Emotional Design: Why We Love (or Hate) Everyday Things, Don Norman
- Neuro Web Design: What Makes Them Click? Susan Weinschenk
- Designing for the Digital Age: How to Create Human-Centered Products and Services, Kim Goodwin
- A Web For Everyone, Sarah Horton, Whitney Quesenbery
- How to Make Sense of Any Mess, Abby Covert
- Radical Focus: Achieving Your Most Important Goals with Objectives and Key Results, Christina Wodtke
- Org Design for Design Orgs: Building and Managing In-House Design Teams, Peter Merholz, Kristin Skinner
- Communicating Design: Developing Web Site Documentation for Design and Planning, Dan M. Brown
- Subject To Change: Creating Great Products & Services for an Uncertain World, Peter Merholz, Todd Wilkens, Brandon Schauer, David Verba
- Hooked: How to Build Habit-Forming Products, Nir Eyal
- The 46 Rules of Genius: An Innovator’s Guide to Creativity, Marty Neumeier
- Sprint: How to Solve Big Problems and Test New Ideas in Just Five Days, Braden Kowitz, Jake Knapp, and John Zeratsky
- Designing with Data: Improving the User Experience with A/B Testing, Rochelle King, Elizabeth F Churchill, Caitlin Tan
- Banish Your Inner Critic: Silence the Voice of Self-Doubt to Unleash Your Creativity and Do Your Best Work, Denise Jacobs
- Design for Real Life, Eric Meyer & Sara Wachter-Boettcher
- Designing Interface Animation: Meaningful Motion for User Experience, Val Head
- Practical Design Discovery, Dan Brown
- On Web Typography, By Jason Santa Maria
- Designing Voice User Interfaces: Principles of Conversational Experiences, Cathy Pearl
- Thinking in Systems: A Primer, Donella H. Meadows
- Creative Confidence: Unleashing the Creative Potential Within Us All, Tom Kelley, David Kelley
More Useful Reading
Reading books is only a partial source of my inspiration and learning. I also frequently read blogs and articles. I highly recommend staying connected to these sources of great thought leadership:
- Eleganthack, Christina Wodtke
- Peter Merholz
- The Year of the Looking Glass, Julie Zhuo
- Bokardo, Joshua Porter
- Information Architects, Oliver Reichenstein
- Felt Presence, Ryan Singer
- Whitney Hess
- Disambiguity, Leisa Reichelt
- Form and Function, Luke Wroblewski
- Frank Chimero
- Aral Balkan
- David Cole
- Seth Godin
- Scott Berkun
- Google Ventures Design Library
- Adaptive Path
- Boxes and Arrows
- UIE Brainsparks
- UX Magazine
- UX Booth
- A List Apart
- Smashing Magazine
- Signal vs. Noise, Basecamp
- 52 Weeks of UX
If you’ve found this article helpful, I would love to hear about it. Comment, tweet me or reach out to share your story: firstname.lastname@example.org
Get My Newsletter
Subscribe to my mailing list and I’ll keep you updated with my latest writing. I’m trying to publish something every 2 months on design thinking and other enriching ideas to help you live a more productive and enjoyable work life.
Hingham web designers
Next, we can select the type of ad.
We want to make an expandable, so we select Expandable on the left.
Next, we can set again ad’s dimensions.
We are building a 320 by 50that expands to 480 by 250.
So I will make those changes.
We then assign the Hingham creative a name.
I will leave my Save ToLocation as the default, and leave the talk about set to Quick.
Once I’m happy with my settings, I click OK.
Google Web Designer creates the initial pages of the ad for me with the dimensions I defined.
The collapsed page already contains a Tap Area event to expand the ad and an expanded pageHingham with a close tap area to collapse back down.
Does Going to the Dentist Make You Nervous?
ADRIENNE PORTERFELT: You've probably tried to buy somethingonline or had to fill out some formfor your kid's school, and it's reallyhard on your phone.
It's really hard.
MUSTAFA: There seemsto be a dark art when it comes to nativeapplications, and they're such small details thatyou're actually working on.
[MUSIC PLAYING] Quite often, developers willjust throw on input fields onto a page and not reallythink about the UX that's attributed to that.
So they'll think ofa flow of a form, but they won't necessarilyfeel that individual input, so how a user struggles.
And we know thatautocomplete really helps speed up theuser experience and makes fillingforms quite nice.
What are your feelingsand experiences on autocomplete andAutofill as a thing? ADRIENNE PORTER FELT:From the user experience, you've probably triedto buy something online or had to fill out someform for your kid's school.
And it's reallyhard on your phone.
It's really hard.
It's even hard on desktop.
You don't want to get upand get your credit card out of your purse,which is downstairs.
And these browserfeatures just really improve the userexperience of using a form.
In fact, we find that peoplefill out or submit the form 30% faster if the formworks with Autofill.
So we very much suggest thatweb developers think about this.
You want people to besubmitting your forms.
Right? So if you really want yourforms to be submitted quickly, easily, work with Autofill.
MUSTAFA: And why do you thinkdevelopers don't do that? Is it very difficult to do? I'm assuming it's just a fewattributes you add to inputs.
Right? ADRIENNE PORTER FELT: Yeah.
It's actually not that hard.
So you basically need to setup autocomplete attributes, and you need to makesure that you're not doing any fancy things thatreplace the normal select and input elements withother types of elements.
I think most of these developersjust don't think about it, don't realize,that you just need to put a littlebit of extra effort in to make sure that yourform works well with Autofill and to test it out.
MUSTAFA: Is that oneof the challenges, I suppose, like people makingthese custom UI things, which are not native but justlike divs or whatever and replacing that? Is that where thingsfall down with Autofill? ADRIENNE PORTER FELT:Honestly, there's a few things that can go wrong,but that's one of the big ones.
Yeah, so someone wants thisreally beautiful custom form where the dropdown isall fancy and custom.
And as a result of that,they're using all divs.
And the browser can'tfigure out, oh, this is supposed to be a form.
And then in that case,Autofill isn't going to work.
MUSTAFA: And Isuppose there's a lot of accessibilityissues connected to that as well, it looks like.
But from your pointof view, you've got designers anddevelopers, they want to do something custom,like unique experience.
But then as someone whoworks on the browser, you want to say, now letthe browser do the work.
Do you think there'sa middle point there? How can developers at leasthave a custom experience that's unique to theirproduct, but at the same time without breaking standards? Because this is one of thebiggest challenges on the web.
ADRIENNE PORTER FELT:So there's a lot of things you can do tochange the look of the form on the page while stillusing the select and input elements that HTML provides.
Right? You can customizethem in many ways.
I have to admit, there is onething you can't customize, and it's the lookof the dropdown, like in a select element.
But everything else, the wayit statically looks on a page, you can customize.
And the browser will stillknow that they're fields.
What you see is thebiggest challenge then, for Autofillor implementation, from your point of view? ADRIENNE PORTER FELT:I think it's honestly that developers don't thinkabout it, that people don't think to themselves that theyreally need to be testing their forms in this way.
When you've made it yourself,you've filled it out 100 times.
You tested it yourself.
And you don't thinkabout the fact that a user is goingto be coming to it in a different state of mind.
They are tryingto fill it out as fast as they can on the phone.
So I think developersjust aren't really thinking about the factthat they need to take these extra small steps.
MUSTAFA: So in terms ofbrowser compatibility, the things you're using willbe Chrome-specific stuff? Or is that open source-- not open source, butit's cross-platform.
ADRIENNE PORTER FELT: Yeah,that's a good question.
So specifically autocompleteattributes for Autofill, that's standardized.
All the browsers respect them.
With that being said, thereis one part, turning Autofill off-- that's the autocompleteoff attribute-- is not respected by all browsers.
But if you say,this form should be a credit card, thatwill be respected by all the major browsers.
MUSTAFA: But eachexperience, is there slight quirks per browser? Because obviously, that's goingto be a browser-specific thing.
ADRIENNE PORTER FELT: Some are-- they have veryslightly different UIs.
For example, maybe they'llbe integrated with a keyboard widget versus a dropdown.
But I think they're prettysimilar across browsers.
MUSTAFA: You work on theactual Chrome UI itself.
ADRIENNE PORTER FELT: Yes.
MUSTAFA: So are you actuallybuilding that design and code yourself, or are youworking with UX designers in that process? ADRIENNE PORTER FELT: Sowe have a design team.
And the design team helpsus figure out what those UI elements should look like.
We actually have a bigredesign coming up this year that I think is going tomake those substantially more beautiful and also help clean upthe code, which I know that it won't affect most people becauseit won't look any different.
But from our perspective-- MUSTAFA: It's much cleaner.
ADRIENNE PORTER FELT: Man,the code's so much cleaner.
MUSTAFA: What's the actualprocess of you actually creating UI? Because for me, I do front-enddevelopment and code.
But it's like there seemsto be a dark art when it comes to native applications.
And they're such smalldetails that you're actually working on, which the user maynot notice because it works.
But if it's broken,they will see it.
What is the actualprocess that you go through with your Chromedesigners to actually making the UI or testing it? I'm asking lots ofquestions all at once.
ADRIENNE PORTERFELT: Yeah, it's OK.
So I'll talk about theprocess a little bit.
So usually at the beginning,Product, Eng, and the designer will get togetherand talk about what they hope for from the feature.
Often, the designwill then come up with some conceptualmocks of what they feel the feature could look like.
They'll get feedbackfrom Product.
They'll get feedback fromthe engineers, like can we actually build this, whatare the corner cases we need? And then we'lliteratively get closer to what we actually can ship.
So I work on across-platform team, which means that whatwe build has to ship on all of Chrome's platforms.
People think of Chromeas one platform.
But actually, it'sWindows and Mac-- which previouslyhad different UIs, but we're coming toone single standard-- Android, iOS.
And so we have to havedifferent mocks that relate to the specific platforms.
So some things may bepossible for some subset.
Anyway, the designers get allthis feedback from engineers, like, we can do thishere and not there.
And then we iterativelycome through to red lines, which isour final set of designs.
And that's what we implement.
MUSTAFA: So in termsof do the designers work with the actual W3C? Because you'redesigning something which has to beconsidered cross-platform at the same [? time.
?] So likewhen the payment request API, like I was working withsome of the team there, there seems to be thingswhere you have to really be seeing whateveryone else is doing so that the experiencethat you're creating is not so widely different.
And that can be quitechallenging for the designer and developer because youinstinctively want to make it, I don't know, "better.
" But you don't want to makeit so vastly different, because then you stick out.
ADRIENNE PORTER FELT: That'san interesting question.
The challenge here isthat with specs, we try not to specify whatthe UI has to look like.
We try to talk about what theuser experience should be so that we can have the appropriatecallbacks, et cetera, to build that experience.
But we don't like tostandardize the UI itself, which is a fine balance becauseyou have to have a UI in mind when you're designing the API.
But we try to make itas general as possible so that we can build differentUI experiences on top of it.
MUSTAFA: Are you workingwith the browsers as well at the sametime to do that, or is it you do things independently? Because there's the thing.
It's like if you do it[INAUDIBLE] the browsers, then you may be leddown a path that's not the best for everyone.
That it's, OK, it'slike a compromise.
But at the same time, you don'twant that complete disparity.
ADRIENNE PORTER FELT: Itdepends a lot on the standard, honestly.
Some of them willbe heavily driven by Chrome or some other browser.
They really want this API.
They'll drive it, and thenget a little bit of feedback along the way fromother vendors.
Whereas others,from the beginning, there's severaldifferent browser vendors working together.
So honestly, it differsfrom standard to standard.
MUSTAFA: And we're coming to the10-year anniversary of Chrome.
What do you thinkthe future of say, Autofill, or just workingwith the other browsers? Because it seems like thingsare getting much better.
I was speaking toDarren, and it was like, the implementationof Flexbox was a nightmare becausethe standard kept changing.
But with CSS grid, it'samazing that there's so much cross-collaborationbetween the browsers, which is great for the users and thedevelopers working across this.
What do you think the futureis for Chrome as a platform and, I suppose, Autofillas well as a specific? ADRIENNE PORTER FELT: Sofor Autofill specifically, it's hard to saybecause I don't think the limitation there reallyis the lack of browser vendors cooperating.
I feel like actually, there'sbeen a lot of discussion, for example, aroundpayment request.
There's a lot of collaborationbetween Safari and Chrome.
I think that thereal problem we have is that Autofill dependson developer adoption.
Right? If it's hard for thebrowser to figure out what form's in thepage, we're not going to be able to Autofill it.
And so I think thething we really care about is whetherwe can get developers interested in andusing the tools that we have provided for them totry to improve the Autofill experience.
Do you ever have toremove a feature when you see there's not wide adoption? Because I can seefrom an engineer, you're working on Chrome.
You spent your heart andsoul working on this feature.
And then you know it'sgreat for user experience.
You know from theresearch that Autofill will help transactions,and it's just nicer.
But if adoption doesn'thappen, how do you [INAUDIBLE]?? It's the biggest-- ADRIENNE PORTER FELT: Yeah,that's a really hard one.
I've been througha few deprecations.
They can be really challenging.
It's very hard.
So there are a few waysyou can look at it.
One is how many usersinteract with websites that are using such a feature.
And obviously, thatnumber is large, you don't want to create apain point for a lot of users.
But even if thenumber is very small, it might be that there are afew websites, a few companies, whose entire businessmodel depends on having access to this API.
And so that can make itvery difficult, where OK, even if it's thisreally a niche thing, it still can behard to deprecate.
So I think there have beenlots of ongoing discussions in general about howto make that trade-off.
Some of the onesI've been involved in relate specificallyto security and TLS, where if something is makingthe web as a whole as safe, we may have to breaksome connections in order to deprecate it.
And it can be areally painful thing when you've got old serverson the internet that aren't being upgraded.
And maybe it's only a smallpercentage of overall page loads, but it'sstill frustrating when a user is trying to getto a website and it's broken.
But ultimately, fromChrome's perspective, it's the user's experiencethat's paramount.
Right? ADRIENNE PORTER FELT: Yes.
MUSTAFA: And theirsafety and security.
So it's like HTTPS, you couldprobably explain it better, but there's a cutoff pointwhere if your site is not loaded on HTTPS, you're goingto get a message saying, this isn't secure.
Right? ADRIENNE PORTER FELT: Fora long time in Chrome, we showed HTTP as neutral, HTTPas just plain text and no TLS.
MUSTAFA: Sorry, what's TLS,just for my non-designer-- ADRIENNE PORTER FELT: Oh, TLSis the underlying protocol that makes HTTPS HTTPS.
It's why it's secure.
So there is HTTP,which doesn't have any of the end-to-endsecurity bits on it.
And HTTP websiteswere just shown as a neutral standard thing.
Right? Most websites on the web wereHTTP, but that's changed.
We went from a few yearsago, we were at 25% HTTPS.
And now, it's the opposite wherewe're at more like 75% HTTPS.
So made changes in theUI to back that up.
So now when you go to awebsite that says HTTP, it's going to also say"not secure" next to it so people reallyunderstand what that means.
MUSTAFA: That decision mustbe quite tough, though.
In some respects, you need toforce the developers to say users' security is paramount.
But at the sametime, does it feel like you're breaking the web? ADRIENNE PORTER FELT:It doesn't really feel like we'rebreaking the web.
First of all, Ithink people have seen this a long time coming.
We've been talking aboutit for a long time.
We've rolled it out in phases.
So first, we started showing"not secure" specifically for pages with passwordsand credit card form fields.
And then it was for allform fields and web pages when viewed in incognito.
And now we're rolling itout for all HTTP websites.
And as you can see, becauseHTTPS adoption has really increased, it's onlyimpacting less than a quarter of page loads at this point.
MUSTAFA: So really,we're just talking about protecting the user.
ADRIENNE PORTERFELT: Yeah, and I think users have a right to knowthat their information isn't secure when they'regoing to this website and help them make adecision about whether or not they want to keep using thatservice or go to another one.
MUSTAFA: And do youthink users are quite savvy now to see those things? Or is this part of theeducation for the user as well to say, look,there are certain things on the web which arenot secure that you have to take into consideration.
ADRIENNE PORTERFELT: I'll be honest.
We have literally billions ofactive users, so it's hard to-- MUSTAFA: Make ageneral [INAUDIBLE] ADRIENNE PORTERFELT: --say generally whether people are goingto understand it or not.
We think enoughpeople understand it that they have a reactionand that they can reach out to sites saying, hey, Ireally like this site, but I wish it were secure.
And we see people doing thatas we've been rolling out these warnings.
SPEAKER 1: The way thatcellular networks are set up is that there's alwaysthese fringe areas, and there's alwaysthese breakdowns.
And higher latencyis always there.
How I joined Google
LYNN MERCIER: Thetruth is, like, if we want to evolve thematerial design system, we need to be able tobuild on top of the code, and each layer ofthat code matters.
MUSTAFA KURTULDU:The conveyor belt is-- designer works onsomething, developer takes it, and developer screams becausethere was no conversation.
I think that's one ofthe biggest challenges.
[MUSIC PLAYING] One of the challenges inthe beginning with material on the web was there's so manydifferent implementations.
Again, the singlesource of of truth, so you had Angular material,you had Polymer, you had MDL.
How have you found solvingthat single source of truth? LYNN MERCIER: Yeah.
Originally we had a unique teamof developers in both Android-- I'm sorry-- Angular,and Polymer, and all these otherweb frameworks sort of building their ownimplementations in material design.
But we found that we couldn'tkeep that going at scale.
Like, we were iterating onthe material design system so quickly, and we couldn'tkeep a single source of truth with these othercomponent libraries.
It's not a perfect solution.
We're still working onmaking it faster and better, but we've foundthat that creates these sort of componentsthat look like they belong in the framework.
So any framework developerwho's working there, they look seamlesslylike they're a part of the environment.
MUSTAFA KURTULDU: The onething that we struggled with with MaterialDesign Lite was there was a lot of blackmagic going on in the DOM.
So you check DeveloperTools, and there'll be, like, these random elements.
And that was, like, anopinionated decision so, you know, how do you go aboutdeveloping a new framework where you have to have anopinion-- there has to be, like, this is the baselineof what we're doing-- without impeding on, like, whatthe developer just wants to do? They just want this componentto work, or this widget, or whatever.
LYNN MERCIER: Yeah.
I try as much as possibleto avoid black magic.
And, like, whenever I'mreviewing any code that any of the designers on myteam are writing, we, like, try and avoid anything that's-- maybe it's a little hack,and it makes it slightly more performant-- butthe truth is, like, if we want to evolve thematerial design system, we need to be able tobuild on top of the code, and each layer ofthat code matters.
So we try and, like, steeraway from any black magic and just have thisone source of truth that works with all thecomponent libraries as much as possible.
MUSTAFA KURTULDU:In terms of, like, working withexisting frameworks, what's the relationship there? Because, like, React isa thing-- you have to-- it's the real world, right? LYNN MERCIER: Mm-hmm.
MUSTAFA KURTULDU: Or likeWordPress is a thing.
Like, you have towork in that world.
LYNN MERCIER: Mm-hmm.
MUSTAFA KURTULDU: So theremay be certain things that you can or can'tdo as a result of that.
LYNN MERCIER: Yeah.
MUSTAFA KURTULDU: Like, formaintaining a framework where-- it's not Android.
It's not, like, a single-- LYNN MERCIER: Yeah.
MUSTAFA KURTULDU:--you have-- it's, like, the web is allabout relationships between different code bits.
I mean, how do you manage that? LYNN MERCIER: It gets reallytricky and really funny.
So we tend to prioritizethem in terms of what developers are already using.
So React is a great example.
There are a ton of codebases already in React-- it's super-popular.
So we want to prioritizethat one first, which is why we're making anMDC React library for React in particular.
But then there'sother libraries, like Angular andlike Polymer that we want to start using as well.
But we tend toprioritize them, again, based off whether or notdevelopers are already using them.
In terms of, like, keepingall that functioning-- and sometimes you endup, like, one framework wants it to do it oneway and another framework wants it to do another way.
It's just constantlycompromising.
Like, we work with thesedevelopers on the Polymer team, or we, like, talk tothe React community and try and figure out what'sthe right way to figure it out.
And we just sort of settleon the right compromise and stay there.
We do it as well with browsers.
So for example, we tendto develop first on Chrome because it's kind of thebest, and it works nice, but we have to support Safari,and Firefox, and Edge as well.
So we tend to testIE at the very end.
And we want it towork, but there's sort of, like, gracefuldegradation sort of things that happen.
As long as that happens, like,carefully and gracefully, then it tends to be OK.
And I think we do the samesort of thing with platforms.
You know, maybe itdoesn't perfectly work in everyplatform but as long as we can kind ofgracefully degrade that component in thatsituation, it'll work out.
MUSTAFA KURTULDU: Yeah, Iknow the BBC have, like, a term that's calledcutting the mustard.
So basically, they willhave, like, a baseline where things have to work.
LYNN MERCIER: Yeah.
MUSTAFA KURTULDU: Like, withthis, and if it doesn't work, or it doesn't supportthis technology, they're gonna say--you know what, you're not going to getthese experiences that we're designing.
I mean it-- how would youfeel about that as a concept? LYNN MERCIER: Yeah, we'vehad to use that already.
So there's newthings coming out-- material designed around shape.
And on the web platform,no matter what technology you're in-- like, what webplatform or what browser you're in-- rounded corners are really easy.
Like, cut-off corners? Impossible.
Just straight up impossiblewith the existing technology.
And so we kind of had to goback to our material design team and say, like-- look, we can update theCSS spec today in 2018, and then three years fromnow, our children's children will, like, have thisfeature, but we're not going to be able toimplement it right now.
So there are some featureswhere you just kind of have to draw the line and say,we can't do this feature without it beinga confusing story, without it being some sortof hack that no one would be able to use.
MUSTAFA KURTULDU:So how about SVG? I mean, I suppose whenit comes to animation, the challenge of SVG isthe performance 'cause-- LYNN MERCIER: SVGs, and thenthe shadows on top of them, and the scroll performanceunderneath those SVGs-- by the time you, like, transportall the browsers and all the situations wherethat component would be, it gets reallyconfusing quickly.
MUSTAFA KURTULDU:And very complicated.
LYNN MERCIER: Yeah,very complicated.
MUSTAFA KURTULDU: That'squite interesting, because the conveyor belt isdesigner works on something, developer takes it, anddeveloper screams because there was no conversation.
I think that's one of thebiggest challenges developers face because, ifyou just talk to me, then I'll be able to explain,especially for designers who have no coding experience.
And I know we've spokenbefore, and you've mentioned stress testingthe design, which is a new concept for me.
LYNN MERCIER: It's my concept.
MUSTAFA KURTULDU: How doesthat work, where you're stress testing the design? LYNN MERCIER: Imean, I think there's a limitation inDesigner Tools that make them want to forceeverything to sort of this pixel-perfect mock.
And it's gorgeous-- itcreates some gorgeous assets, but it doesn't always workin a real-world application.
And a developer'sjob is to create something that works in areal-world application, right? Ours is the stuff-- thecode that's running live.
And so many problems come froma design being pixel-perfect for one language, one screenwidth, one set of content.
And when you goto build that, you can build sort of adummy site quickly, but once you start populatingit with real content, all these problems come up.
And I think most designers,if you go and talk to them and say, like-- hey,I have this problem.
They'll help you.
They'll, like, show youhow to change the design and tweak it in this situation.
Like, they're very receptiveto that feedback-- they want to make their designs better.
But if you don't knowwho your designer is when you have thisproblem, then you just have this bug that says-- doesn't work in German.
Like, what do you do? You have no idea how to fix it.
So yeah, I think this conveyorbelt problem of designers who sort of, like,design something but then leave the projectand don't collaborate with the developers asthey're building it, it makes it reallydifficult for the developers to make the productbetter over time.
MUSTAFA KURTULDU: So how do youthink designers can actually improve their process to makethat relationship better? Or more, is it reallydown to the most obvious? You just need to pairprogram, or pair together.
You have to talk to the person.
That's really the bestway to do it, so like-- LYNN MERCIER: Thatis the best way.
I mean, I think that can bereally difficult in certain-- if you don't have enoughtime and resources, sort of dedicate, like, one person,one designer, and one developer to every single feature.
I think there's waysin the middle to do it.
So for one, make sure thatyou know each other's names.
Like, if you'reremote, make sure you know how to deployyour code somewhere to staging so yourdesigner can work with it, and make sure your designerhas a way to send you, like, iterations on mocks.
Another sort of quick andobvious thing, I think, for designers is tointernationalize.
The moment you take allthe text from your mock, put it in Google Translate,put it back in the mock, and see what looks horrible-- MUSTAFA KURTULDU: German.
LYNN MERCIER: --like, yeah! German! Or even, like, CJK languages.
Just pick a language.
It doesn't matter ifyou translate it right.
Just, like, do thatfirst step because you're going to run into all thewidth and height problems that a developerwill run into live.
And I think it's goodfor designers, right? It helps you makeyour product better to get feedback aboutwhat sort of languages do I need to support.
MUSTAFA KURTULDU:And it's especially important inuser-generated apps where the content could be 10 pages,or it could be two lines.
LYNN MERCIER: Yeah! MUSTAFA KURTULDU:It's not like-- you always get the mock wherethere's, like, the name-- LYNN MERCIER: Yeah! MUSTAFA KURTULDU: --theavatar name's perfect.
LYNN MERCIER: Fits perfectly.
MUSTAFA KURTULDU: Yeah, butwhat if the name's like, you know, four words long? LYNN MERCIER: Yeah.
MUSTAFA KURTULDU: Isthere anything else that they can do like the stresstest that wasn't just really-- LYNN MERCIER:Internationalization is a big one.
I think different screen widths,at least in your own web, is helpful as well,like making sure that the obviousbreakpoints work but also sort of smallerones or bigger ones.
But, yeah, it justcomes back to, like, be there when your developerruns into a real problem and help them fix that problem.
I think most developerswant to fix problems.
They want to code that out.
They just want to geton their headphones-- like, get the code outthat will fix the problem, but they don't know how toredesign the site, right? We're not going to-- ifyou make a developer guess how to design a site, we'regoing to guess really poorly.
So you need to helpus as designers.
SPEAKER: If you spentloads of time polishing your, like, amazingprototype, then you suddenly becomevery, like, you know, reticent to throw it away.
Kind of like it'syour baby, you're going to polish this too much.
And so that's dangerous,because then you're not using prototyping forprototyping's real purpose, which is to learn.Image by bluesbby / CC BY
Intuit has open-sourced ‘Karate’, a framework that makes the tall claim that the business of testing web-APIs can actually be — fun.
I know what you must be thinking. There’s no way that making HTTP requests and navigating the forest of data that is returned could be fun.
But really, that’s what developers who tried Karate had to say. It actually didn’t surprise us. Because Karate was born out of a strong dis-satisfaction with the current state of solutions that exist. And a lot of thought went into Karate to keep it simple and elegant, to allow the user to focus on the functionality instead of boiler-plate, and to keep things concise.
Karate strives to reduce the entry barrier to writing a test and more importantly — reduces the friction to maintain a test, because of how readable tests become.
The obligatory “Hello World” example may throw some light on the unique approach that Karate takes.Hello World!
So if you found that compelling, and if you or your teams are in the business of testing complex web-service APIs, be it REST, SOAP, JSON, XML or GraphQL — do check out Karate.
Karate is in the early stages of adoption by teams within Intuit, but we decided to open-source this right away, so as to accelerate the process of community feedback. It is our firm belief that Karate is already equipped to take on the challenge of testing any real-world web-service, and the feature-list on the home page is a testament to this.
And your feedback can make it more awesome. It would be great to see your feature requests on the GitHub project page, and do pass on the link to those who you feel would benefit from what Karate has to offer.
And remember, testing web-services can be fun!