Categories
Ethics

ASPIRE: An Acronym for Better Web Practice

Sometimes interesting things happen on Twitter. Last week Scott Jehl proposed ASPIRE as an acronym for the practices we should follow as web designers and developers. From the resulting blog post:

Great websites should aspire to be:

  • Accessible to folks with varying cognitive and physical abilities and disabilities
  • Secure and reliable for storing, manipulating, and transferring information
  • Performant on average devices and in constrained or unreliable network conditions
  • Inclusive to diverse audiences and produced by diverse teams to create better experiences
  • Responsive in adapting the user interface contextually to any screen
  • Ethical in how users’ preferences and data are handled

I’m interested in the last one: E for Ethical.

What constitutes “ethical” web practice?

While we have pretty well established standards and practices for the first five; AccessibleSecurePerformantInclusiveResponsive; we have yet to establish what “Ethical web design and development” means, what it looks like and how it is practiced.

Part of the problem is the term “ethics” is often equated with statements like “do no harm” or practices to avoid legal issues. In reality, ethics refers to the principles and practices we agree upon as a society to judge the goodness and rightness of acts. The Markkula Center for Applied Ethics describes it like this:

“ethics refers to well-founded standards of right and wrong that prescribe what humans ought to do, usually in terms of rights, obligations, benefits to society, fairness, or specific virtues.”

In short, ethics is about practice, how we conduct ourselves and how we judge our actions.

Ethics cannot be summed up as “do no harm” because that leaves the door open to moral relativism: what is harm, to whom is this harm being done, who decides this is harmful, etc.

So what then is ethical practice in relation to web work? Here’s my rough draft to start a conversation about a definition:

Ethical web design and development practice: Work focused on human flourishing through ethical practice and methodology and centered on the rights, capabilities, and agency of the end-user.

What is “ethical practice?” Design and development practice rooted in ethical principles.

What are “ethical principles?” Principles derived from well-established moral philosophies including Consequentialism (specifically Utilitarianism), Duty EthicsVirtue Ethics, and Capability Approach. I wrote a huge article for Smashing Magazine about how to use these in web design, and also done some talks on the topic:

Bottom line, ethical practice is about the doing and being of the practitioner, whether they see their users as ends or means to an end, whether they put “ought” before “can”, and prioritize the agency of those they act upon. It’s about how we judge the goodness and rightness of our work.

I’m really excited about this conversation, and I hope we can get together as a community and figure out what ASPIRE means to us, and how we want to define Ethical web design so we can come together around shared principles and practices and carve meaningful paths into the future for other people and for ourselves.

Cross-posted to LinkedIn.

Cover photo by ?ukasz ?ada, Unsplash 

Categories
My Opinion

Where We Go From Here: 10 Thoughts on the Immediate Future of the Web

I was asked to close out WordCamp Vancouver with a short 20 minute keynote on something interesting. After some thought, I put together a list of 10 trends I see in the web community and where we are headed in the immediate future.

0. The Future Keeps Arriving

In my +15 years working on and with the web, the one major lesson I’ve learned is the future keeps arriving, sooner than you think, and often the future is already here. The web, the internet, and the technologies and communities powering them are evolving ever more rapidly, and what we consider future possibilities today often becomes practical realities the very next day. The future keeps arriving. Keep this in mind as you read on.

1. WordPress Themes are Dead. Long Live WordPress Themes.

If you’re of the WordPress persuasion, you’ll know about the Block Editor, nee “Gutenberg,” and how it’s changing everything. Even if you don’t work with WordPress, even if you don’t care about WordPress, this transition from the content blob to each piece of content being its own “block” with its own properties and attributes is changing everything about how we think of content on the web. Why? Because WordPress powers a full 34% of the web meaning what WordPress does impacts everyone, even those who don’t use it.

Why does this matter? The front-end of pretty much every WordPress site up until this moment is a template displaying content in a relatively rigid way. With the Block Editor, that paradigm is all but dead. Right now, blocks are confined to the “content area,” meaning the post or page content itself. That’s about to change. In the foreseeable future – probably within the next 12 months – the block concept will spill outside the content area to take over the whole view. This article and video from Matias Ventura gives us an early preview of this future:

Exactly what this all means is still up for debate, and the debate is happening right now: See Ben Gilbanks’ “The End of WordPress Themes Is In Sight” and Justin Tadlock’s “Rebirth of Creativity: Gutenberg and the Future of WordPress Themes” for two contrasting views.

Bottom line: What we think of as a “WordPress theme” is already an outdated concept. The future has arrived, we’re just waiting for the practical implementation.

2. Gatsbyfication of the CMS Ecosystem

If you don’t know what Gatsby is, you will soon. The emergence and popularity of static site generators like Gatsby, 11tyNuxtJekyllHugo, and more is the beginning of a communal shift from delivering server-side rendered front-ends to delivering static or faux-static front-ends, often powered by JavaScript frameworks powerful APIs, and new query languages like GraphQL (see below for more on that). Gatsby and its ilk sit adjacent to traditional CMSes pulling data from them through APIs and presenting it to the user in new and more performant ways. And they can combine data in ways those old CMSes can not. More on that later as well.

What’s driving the Gatsbyfication of the CMS ecosystem? Several things:

  1. The idea of the monolithic end-to-end CMS solution is old and outdated. We no longer consume data from single sources, and giant monolithic CMSes like WordPress, Drupal that try to do everything for everyone etc are becoming dinosaurs.
  2. Performance is the new Black, and CMS-generated just-in-time server-rendered sites just don’t cut it. Static site generators pulling data from CMSes is the natural progression from caching server-rendered content.
  3. Delivering content on the “Edge”: The web is global, yet CMS-based content delivery is most often confined to one server in one location. Content Delivery Networks (CDNs) have long been used to try to remedy this issue, with mixed results. Static site generators like Gatsby allow content to be computed and rendered on the “edge” – closer to the end-user, and in a more performant way.
  4. JavaScript is the new wine. Nobody likes PHP any more. Love it or hate it, JavaScript is the place to be, and static site generators are soaking in it.

Bottom line: I call this trend the “Gatsbyfication” because right now Gatsby has more wind in its sails than any competitor and money is pouring into the project. Does that mean Gatsby will reign supreme? I have no idea, but I think a Gastby-type solution will reign supreme in our immediate future.

3. With the APIfication of the Web, REST is ceding to GraphQL

REST APIs have been around since forever. I remember going to a web conference in 2009 where almost every talk was about RESTful APIs. REST gave us the tools and infrastructure to evolve the web beyond single-source-of-content solutions and paved the cowpaths leading to the client-side content rendering which is now the default for content rich sites including LinkedIn, YouTube, Facebook, and sites powered by static site generators like Gatsby (see above).

The problem is the REST concept is old, and it doesn’t provide the necessary tooling to do the things we want to do today.

Enter GraphQL, a new query language which approaches the same problem REST tried to solve in a new and more modern way. I won’t bore you with the details of how GraphQL works (we have courses for that at LinkedIn Learning if you’re interested!). Suffice it to say GraphQL allows developers to combine data from different API sources and make it available in ways that benefit them and make previously impossible or very hard things practically possible.

If you don’t believe me, look no further than the WordPress project: After an enormous undertaking of creating a proper REST API for WordPress, tools like Gatsby choose instead to use the custom WPGraphQL to query and consume data from the source.

Bottom line: The APIfication of the web has been happening for a while, and future web services will need to serve up comprehensive APIs to stay relevant. GraphQL-type query languages will replace REST as the standard interface, and as a result consuming content from single sources will become an anti-pattern (see below).

4. Content Streams and the Content Mesh

Back in 2013, David Gelernter published an opinion piece in Wired Magazine titled “The End of the Web, Search, and Computer as We Know It” where he talks about the concept of a “lifestream”:

“a heterogeneous, content-searchable, real-time messaging stream.”

David Gelernter

Sound familiar? If you have one of those talking thermos cans at home and asked it “Hey Corporate Surveillance Device, tell me about my day” you know that’s pretty much were we live today. Except the web hasn’t quite caught up to the trend yet.

Enter the “Content Mesh” — the infrastructure layer for a decoupled website — introduced by the Gatsby team and pretty much the manifestation of what Gelernter talked about all those years ago.

The Content Mesh, if we choose to adopt this language, is the idea of building a front-end that consumes and interacts with data from multiple sources. So instead of having one monolithic WordPress site trying to do blogging and ecommerce and forums and forms and everything else, you have one unified front end that brings in blogging from WordPress, ecommerce from Shopify, pages from Contentful, forms from Google Forms, etc. Literally meshing together content.

Bottom line: The current idea of the content mesh is an evolution of the single-source website concept. That’s where we’re headed right this moment. In the slightly more distant future, the content mesh will be served by our personal assistants, configured by the individual user, and the website as we know it will be a quaint anachronistic thing some people choose to spend their time on.

5. The Rectangular Screen as Main Content Delivery Modality is Already Dead

Here’s the new trailer for the dystopian near-future sci-fi show Black Mirror:

Just kidding. This is an ad for Facebook Horizon – a virtual world reminiscent of the OASIS predicted in the book Ready Player One, except it’s run by IOI (you don’t need to read the book or see the movie btw. If you haven’t, just read on).

AR/MR/XR/VR/CR whatever we end up calling it, the idea of computers in some way augmenting our reality by introducing virtual layers in the form of visuals, audio, or other sensory inputs, is now a reality. All the major tech firms are fighting to be the first to inject their own ad-fuelled reality as a layer on top of our own. If you have one of those aforementioned talking orporate surveillance thermos cans, or a modern phone or computer or TV with a voice assistant, you are already living in this future.

The world in which our main tool for accessing information over the internet is a rectangular glass screen is already in the past. We are merely experiencing the late-stage residuals. The second the Fruit Company rolls out their first set of iGlass AR-powered glasses, and the Search Company follows suit with AR-powered contacts, the focus for web content delivery will shift from “how do we cram as many ads into the viewport of a mobile browser” to “how do we cram as many ads into the field of view and range of hearing of the human experience?”

Don’t believe me? Watch Marley Rafson’s talk “The Case for Augmented Reality on the Web” from JSConfEU 2019 and draw your own conclusions:

Bottom line: The APIfication of the web, and the Content Mesh, will become more important than ever because we’ll need to design and deliver our content to new interfaces which don’t even exist yet in the immediate future. Also, unless we actively resist the urge to AR everything and put ads everywhere, our AR world will be an insufferable hellscape reminiscent of Keiichi Matsuda’s “HYPER-REALITY” for the next decade.

6. CSS Changes Everything

On a positive note, CSS is evolving and changing in extraordinary ways, and the future of CSS is even more extraordinary. In our modern web dev world already have magical tools like flexgridcustom propertiesanimations, and filters. Soon our CSS toolkit will expand exponentially thanks to CSS Houdini. Look no further than Una Kravets‘ JSConfEU talk “CSS Houdini & the Future of Styling” to see where we’re headed next:

As if that wasn’t enough, the canvas in which we do our work is about to change as well. Right now, Adam Argyle is working on his VisBug Chrome extension:

Adam made this GIF just for this article!

Sold as a visual browser development tool that makes your browser viewport work more like a design tool, I think this thing is a peek at what the future will bring in terms of web design: The browser itself being the design canvas, and server-powered tools like WordPress’ Gutenberg editor being old hat.

7. Open Source Ideology is D/Evolving

Open source rules the web world. Open source is also experiencing some long-overdue internal strife. Without going into too much detail, Richard Stallman, considered the originator of open source ideology, has stepped down from his various leadership roles in the open source and free software communities due to accusations of decades of problematic behavior. You can read more about this in various news outlets and opinion pieces (and you should, this stuff is important).

Here’s my abbreviated take: It’s high time problematic characters like Stallman are removed from their positions of power in the open source community because their influence has been detrimental to the participation in these communities for many marginalized groups. Moreover, it opens the door to a deeper conversation about the core ethos of open source ideology and whether the radical understandings of terms like “freedom” by a group of entitled white men is a sound foundation to build equitable and inclusive communities moving forward.

I’m going to write more about this in a separate post, but my long-held opinion on open source ideology (and I say this as an open source creator, contributor, and proponent) is open source in its present iteration is exclusionary and privileged. Why? Because it’s based on the assumption that those who have something worthwhile to contribute also have the time, money, and necessary tools and access to be able to contribute. From there follows that anyone who is not contributing, for whatever reason, does not have anything valuable to contribute (which is utter nonsense) and that those who contribute the most (usually because they are paid by corporations to do so – see below) are the best people to lead the project. “Decisions are made by those who show up” really means “decisions are made by those with enough privilege to show up” which is not an equitable nor inclusive base to rest an entire ideology on. Follow Christie Koehler for more on that story.

Then there’s the whole “open source is value neutral” and “open source licenses can’t have morality clauses” thin which deserves an entire article its own. Follow and support Coraline Ada Ehmke in their efforts to debunk that nonsense.

Bottom line: Open Source ideology is being redefined right now. Your participation in that conversation decides whether it’ll be an evolution or a devolution. Your voice matters, so use it! Forward the equitable and inclusive open source revolution!

8. Corporate Control of Open Source is the New Black

Guess what: Open Source is super valuable. No wonder large corporations want their piece of the pie. Actually, they want all the pieces of the pie and they want you to bake it, for free! Yes, yes, I work for LinkedIn which is part of Microsoft etc. But I’m believe in open source, and I’m deeply concerned about the corporatization of the open source space.

Here’s the gist: The core idea of free libre open source software was to effectively flood the commons with free (as in you don’t pay) open source software so the large corporations who sold expensive licenses for proprietary software went out of business. Don’t believe me? Go read the GNU Manifesto (and keep in mind everything I said above). The idea was we would use open source software in the capitalist world to earn money, thereby keeping the software itself without value and only putting value to the services rendered with the software.

So what happened? Corporations figured since all the open source contributors didn’t derive value from their software, the corporations could do it instead! And without paying a dime for it. Literally get people to work for free and then make money from that work.

Sure, that’s an oversimplification, but it is also the reality on the ground. The corporatization of open source, in particular large projects like WordPress and Drupal and NPM, is a reality, and it’s only going to get bigger. If there is value in a project, a big corporation will be made to turn some of that value into cold hard cash. See the aforementioned Gatsby.

Some say this is a good thing. Some say it’s not. I think we need to start thinking more about where we want to go than how we can turn free contributors into cash cows.

Bottom line: The open source community has failed in its mission to change the status quo, choosing instead to double down on good old capitalism. If you don’t like it, do something about it. Also, go read Cory Doctorow’s “Walkaway“.

9. The Tech Ethics Reckoning

The Pope felt it necessary to invite Silicon Valley to the Vatican to talk to the tech industry about morals, ethics, and the common good:

Unless you’ve been living under a rock, you know #techethics is hot shit, and for good reason: Turns out moving fast and breaking things breaks people, communities, even our democracy.

Here’s the problem: The tech and design communities are largely autodidact. There is no board of ethics for tech or design, and everyone is allowed and encouraged to do whatever they want in the name of disruption, innovation, and creation. Put bluntly, we are working in a non-ethical industry.

Why does this matter? Because in lieu of the tech and design industries regulating themselves, or at the very least adopting and enforcing some basic form of ethics, governments will regulate us without our input. Which is what’s happening right now.

This is especially bad for open source because unlike large corporations and their walled gardens, who spend millions on lobbyists to sway politicians to lock everything down and hand the keys to the highest bidder, open source developers live in some reality dysfunction where they think politics and political involvement are irrelevant.

Trust me when I say they are not. They are the life blood of modern civil society, and choosing to stand aside and let things happen without your input is the same as letting other people carve out the path you need to follow into your future.

Bottom line: Unless we figure out the whole ethics thing for tech and design right now, we are going to be regulated into a walled garden of corporate surveillance of our own making.

10. The Next Generation

Looking around at my industry I see two things:

  1. Old white men like myself wringing our hands and saying “man, we really messed this up, I wish we could roll back the clock and do some things differently.”
  2. Young diverse community members trying to make make a living out of an industry emerging from its adolescence and realizing it now runs the world and needs to do a better job at it.

This gives me hope.

I believe in the next generation of creators on the web, and I believe they have what it takes to turn this chaotic mess we call “tech” into what it can be: A new path forward for a more equitable and diverse society with values rooted in the idea of common goods distributed through free and open commons.

Bottom line: The future keeps arriving. The future is already here. It is our job to ensure the next generation gets to experience the same freedom of creation and discovery on a free an open internet so they can build a robust and inclusive society for all of us.

Postscript: Your turn

This is what I see. I’m just one person, and I have strong opinions about things. To move forward, a discourse is required. We need to share our thoughts, ideas, hopes, and concerns, and figure out how to move forward together.

What do you think about all this? What trends are you seeing? Where are we headed next, and where do you think we should be headed?

Add your thoughts in the comments, or in your own posts, and let’s find paths into the future we design together!

Cross-posted to LinkedIn.

Categories
My Opinion

The 99 Habits of Highly Successful, Motivated, Efficient, Charismatic, Happy People

Do viral list articles on the web leave you feeling like you’re not measuring up? Like everyone is more successful, motivated, efficient, charismatic, and happy because they do things differently? Fret not my friend. I have the cure to all that ails your self-doubting soul: The definitive list of the 99 Habits of Highly Successful, Motivated, Efficient, Charismatic, Happy People.

Adopt these habits and your life and self-image will change dramatically for the better:

  1. Don’t read lists comparing yourself to others.
  2. Don’t read lists comparing yourself to others.
  3. Don’t read lists comparing yourself to others.
  4. Don’t read lists comparing yourself to others.
  5. Don’t read lists comparing yourself to others.
  6. Don’t read lists comparing yourself to others.
  7. Don’t read lists comparing yourself to others.
  8. Don’t read lists comparing yourself to others.
  9. Don’t read lists comparing yourself to others.
  10. Don’t read lists comparing yourself to others.
  11. Don’t read lists comparing yourself to others.
  12. Don’t read lists comparing yourself to others.
  13. Don’t read lists comparing yourself to others.
  14. Don’t read lists comparing yourself to others.
  15. Don’t read lists comparing yourself to others.
  16. Don’t read lists comparing yourself to others.
  17. Don’t read lists comparing yourself to others.
  18. Don’t read lists comparing yourself to others.
  19. Don’t read lists comparing yourself to others.
  20. Don’t read lists comparing yourself to others.
  21. Don’t read lists comparing yourself to others.
  22. Don’t read lists comparing yourself to others.
  23. Don’t read lists comparing yourself to others.
  24. Don’t read lists comparing yourself to others.
  25. Don’t read lists comparing yourself to others.
  26. Don’t read lists comparing yourself to others.
  27. Don’t read lists comparing yourself to others.
  28. Don’t read lists comparing yourself to others.
  29. Don’t read lists comparing yourself to others.
  30. Don’t read lists comparing yourself to others.
  31. Don’t read lists comparing yourself to others.
  32. Don’t read lists comparing yourself to others.
  33. Don’t read lists comparing yourself to others.
  34. Don’t read lists comparing yourself to others.
  35. Don’t read lists comparing yourself to others.
  36. Don’t read lists comparing yourself to others.
  37. Don’t read lists comparing yourself to others.
  38. Don’t read lists comparing yourself to others.
  39. Don’t read lists comparing yourself to others.
  40. Don’t read lists comparing yourself to others.
  41. Don’t read lists comparing yourself to others.
  42. Don’t read lists comparing yourself to others.
  43. Don’t read lists comparing yourself to others.
  44. Don’t read lists comparing yourself to others.
  45. Don’t read lists comparing yourself to others.
  46. Don’t read lists comparing yourself to others.
  47. Don’t read lists comparing yourself to others.
  48. Don’t read lists comparing yourself to others.
  49. Don’t read lists comparing yourself to others.
  50. Don’t read lists comparing yourself to others.
  51. Don’t read lists comparing yourself to others.
  52. Don’t read lists comparing yourself to others.
  53. Don’t read lists comparing yourself to others.
  54. Don’t read lists comparing yourself to others.
  55. Don’t read lists comparing yourself to others.
  56. Don’t read lists comparing yourself to others.
  57. Don’t read lists comparing yourself to others.
  58. Don’t read lists comparing yourself to others.
  59. Don’t read lists comparing yourself to others.
  60. Don’t read lists comparing yourself to others.
  61. Don’t read lists comparing yourself to others.
  62. Don’t read lists comparing yourself to others.
  63. Don’t read lists comparing yourself to others.
  64. Don’t read lists comparing yourself to others.
  65. Don’t read lists comparing yourself to others.
  66. Don’t read lists comparing yourself to others.
  67. Don’t read lists comparing yourself to others.
  68. Don’t read lists comparing yourself to others.
  69. Don’t read lists comparing yourself to others.
  70. Don’t read lists comparing yourself to others.
  71. Don’t read lists comparing yourself to others.
  72. Don’t read lists comparing yourself to others.
  73. Don’t read lists comparing yourself to others.
  74. Don’t read lists comparing yourself to others.
  75. Don’t read lists comparing yourself to others.
  76. Don’t read lists comparing yourself to others.
  77. Don’t read lists comparing yourself to others.
  78. Don’t read lists comparing yourself to others.
  79. Don’t read lists comparing yourself to others.
  80. Don’t read lists comparing yourself to others.
  81. Don’t read lists comparing yourself to others.
  82. Don’t read lists comparing yourself to others.
  83. Don’t read lists comparing yourself to others.
  84. Don’t read lists comparing yourself to others.
  85. Don’t read lists comparing yourself to others.
  86. Don’t read lists comparing yourself to others.
  87. Don’t read lists comparing yourself to others.
  88. Don’t read lists comparing yourself to others.
  89. Don’t read lists comparing yourself to others.
  90. Don’t read lists comparing yourself to others.
  91. Don’t read lists comparing yourself to others.
  92. Don’t read lists comparing yourself to others.
  93. Don’t read lists comparing yourself to others.
  94. Don’t read lists comparing yourself to others.
  95. Don’t read lists comparing yourself to others.
  96. Don’t read lists comparing yourself to others.
  97. Don’t read lists comparing yourself to others.
  98. Don’t read lists comparing yourself to others.
  99. Don’t read lists comparing yourself to others.

In conclusion: Don’t read lists comparing yourself to others.

Categories
CIRA

2012 CIRA Board of Directors Election Nominations Open

Got a .ca domain? If so, you should register as a member of the CIRA (Canadian Internet Registration Authority). You can do so by following this link. Membership is free and zero obligation and gives you access to resources and the power to nominate people for and vote in the CIRA Board of Directors elections which happen to be happening right now.

Over the years I have held several positions on boards, committees and in political organizations, and I am well versed with committee process, financial management and political strategy. This combined with my broad experience in web design, development and education as well as my strong connection to the Canadian web community makes me an ideal candidate for the CIRA Board of Directors. How’s that for a political pitch! All jokes aside though, I do want you to nominate me for this position, and vote for me in the upcoming elections.

Having a user voice on the Board of Directors of the CIRA is vitally important as the future of the internet in Canada and in the world is currently being laid out by our often misguided political representatives. The internet has changed the world by giving every man, woman, and child a voice and allowing anyone to share their thoughts, ideas, and content freely and without restriction. This has lead to everything from media shifts to social change and even political and national groundswells, and it must be allowed to continue. We live in a digital age, and the internet is at its core.

From the CIRA press release:

Ottawa, July 31, 2012 — The Canadian Internet Registration Authority (CIRA) is asking its Members to take part in the exclusive Member-only Nomination period by nominating themselves or someone they know for the 2012 CIRA Board of Directors Election.

.CA Members play a valuable role in contributing to CIRA’s corporate strategic direction by directly participating in governance activities such as Board of Director Elections. This is an opportunity for our Members to take a leadership role in the development of the Internet of the future to ensure it continues to be an open and accessible public resource.

We are looking for Canadians with board experience and/or an interest in technology and the Internet. Expertise in one of the following areas would be an asset: accounting, law, marketing and communications or technology.

Nominations may be submitted by Members until to 6 p.m. (ET) on August 13th, 2012 at: elections.cira.ca/2012/en/member_nominees.html.

Thereafter nominees require a minimum of 20 members to “show their support” to be included in the final vote. More on that to come.

The full calendar for the elections is as follows:

  • July 31 — Members, submit your nominations
  • August 23 — Show your support for Member Nominees
  • September 11 — Ask Candidates your questions in the Campaign Forum
  • September 19 — Make your voice heard, VOTE!

And like I said at the top, the first step is to become a member, so get on it now and help get me a seat!