Drupal News

OSTraining: How to Display Flickr Images on Your Drupal 8 Site

Main Drupal Feed - Thu, 01/31/2019 - 00:00

The Drupal 8 "Flickr" module allows you to insert Flickr images or photosets (albums) on your site, without the need of keeping the images on your server. This has a couple of advantages (we won’t discuss the disadvantages in this tutorial):

  • Less use of resources on your own server
  • Improvements on the performance of the site
  • You avoid copyright issues in your site, Flickr takes care of that
  • Make use of thousands of Flickr images available under CC License.

DrupalEasy: Make 2019 the Year of Drupal Talent Development

Main Drupal Feed - Wed, 01/30/2019 - 23:01

All sorts of organizations have made their predictions and proclamations about what 2019 will be the year of... Some say it is the Year of Optimism and growth for helicopters, others, …of the Hack & Slash, …of indigenous languages, …of the electric SUV, and even the International Year of the Salmon.  It all comes down to what someone sees as an important aspect of their field to promote or what is or should be a trend.  DrupalEasy would therefore like propose we make 2019 the Year of Drupal Talent Development.

As an active member of the community, we've observed, had great discussions and provided several sessions at Camps and Cons about the talent shortage in the community as well as how to build a Drupal career. We feel it is pretty important to Drupal. Right now, there are more than 2,000 jobs requiring Drupal skills on Indeed, and hundreds more continually being added. The Drupal Association also recognized the need, as we discovered while putting together this blog post, with the introduction of a Drupal Educational Opportunities Newsletter, which will help get the word out to those looking to further their skills, and those looking to start a career in Drupal.  

As a training organization, we not only train within the community, but bring in new people to develop passion for Drupal. We’ve had over a decade to watch people who started out not being able to spell Drupal develop the commitment and skills to excel at it. We’ve seen our Drupal learning community grow, diversity, and expand internationally, as new students hone their skills and strive to contribute to the community while they do it. Through all of this talent development for Drupal and the community, most gratifying is seeing the companies and organizations compete for the people building rewarding and fulfilling careers through experience and participation. 

How can we make it the Year of Drupal Talent Development?  A simple way is for each of us to simply sharie information on Drupal as a career and the opportunities in Drupal to those who may benefit from it. For those with the need and resources, providing the education and training needed for individuals or teams. There are some great resources to get information about Drupal as a career

The US Department of Labor has an Occupational Outlook Handbookprovides summaries of careers including salary ranges, anticipated job growth, and types of work environments.  Their entry on Web Developer careers, though not specific to Drupal, seems to track pretty well. There is also great salary information about Drupal specific web development through the Indeed Salary Tool, as well as Glass Door's version

Of course, salary is just a part of it, so a few years ago, we put together a Drupal Career Resources page to provide an index of information, insight and news for those looking to get into Drupal. It is a quick way for those of us who are in the community to share a lot of information.    

We also truly believe that solid education in the ways of Drupal is key to get and keep people active in the community.  Mike Anello teaches our our 12-week live, Drupal Career Online course twice each year.  The career technical education course is licensed as a certificate program through the Florida Department of Education Commission for Independent Education.

Drupal Career Online is a  comprehensive program that includes 2 class sessions and one co-working lab session each week, along with Mike's office hours and access to other training provider resources, most recently Drupalize.me.  Participants are also provide rich learning resources including a lesson guide, class slides, links to go further in-depth into topics, and a screencast for every lesson, which is all accessible through a session-specific class web site. 

Prior to each DCO session, we hold Taste of Drupal mini-webinars to introduce people to Drupal, Drupal careers and our course.  There are 2 more sessions before the Spring 2019 session of Drupal Career Online kicks off on February 25th.  Those interested can sign up for a Taste of Drupal, or contact us to get more information.      

DrupalEasy: Make 2019 the Year of Drupal Talent Development

Main Drupal Feed - Wed, 01/30/2019 - 23:01

All sorts of organizations have made their predictions and proclamations about what 2019 will be the year of... Some say it is the Year of Optimism and growth for helicopters, others, …of the Hack & Slash, …of indigenous languages, …of the electric SUV, and even the International Year of the Salmon.  It all comes down to what someone sees as an important aspect of their field to promote or what is or should be a trend.  DrupalEasy would therefore like propose we make 2019 the Year of Drupal Talent Development.

As an active member of the community, we've observed, had great discussions and provided several sessions at Camps and Cons about the talent shortage in the community as well as how to build a Drupal career. We feel it is pretty important to Drupal. Right now, there are more than 2,000 jobs requiring Drupal skills on Indeed, and hundreds more continually being added. The Drupal Association also recognized the need, as we discovered while putting together this blog post, with the introduction of a Drupal Educational Opportunities Newsletter, which will help get the word out to those looking to further their skills, and those looking to start a career in Drupal.  

As a training organization, we not only train within the community, but bring in new people to develop passion for Drupal. We’ve had over a decade to watch people who started out not being able to spell Drupal develop the commitment and skills to excel at it. We’ve seen our Drupal learning community grow, diversity, and expand internationally, as new students hone their skills and strive to contribute to the community while they do it. Through all of this talent development for Drupal and the community, most gratifying is seeing the companies and organizations compete for the people building rewarding and fulfilling careers through experience and participation. 

How can we make it the Year of Drupal Talent Development?  A simple way is for each of us to simply sharie information on Drupal as a career and the opportunities in Drupal to those who may benefit from it. For those with the need and resources, providing the education and training needed for individuals or teams. There are some great resources to get information about Drupal as a career

The US Department of Labor has an Occupational Outlook Handbookprovides summaries of careers including salary ranges, anticipated job growth, and types of work environments.  Their entry on Web Developer careers, though not specific to Drupal, seems to track pretty well. There is also great salary information about Drupal specific web development through the Indeed Salary Tool, as well as Glass Door's version

Of course, salary is just a part of it, so a few years ago, we put together a Drupal Career Resources page to provide an index of information, insight and news for those looking to get into Drupal. It is a quick way for those of us who are in the community to share a lot of information.    

We also truly believe that solid education in the ways of Drupal is key to get and keep people active in the community.  Mike Anello teaches our our 12-week live, Drupal Career Online course twice each year.  The career technical education course is licensed as a certificate program through the Florida Department of Education Commission for Independent Education.

Drupal Career Online is a  comprehensive program that includes 2 class sessions and one co-working lab session each week, along with Mike's office hours and access to other training provider resources, most recently Drupalize.me.  Participants are also provide rich learning resources including a lesson guide, class slides, links to go further in-depth into topics, and a screencast for every lesson, which is all accessible through a session-specific class web site. 

Prior to each DCO session, we hold Taste of Drupal mini-webinars to introduce people to Drupal, Drupal careers and our course.  There are 2 more sessions before the Spring 2019 session of Drupal Career Online kicks off on February 25th.  Those interested can sign up for a Taste of Drupal, or contact us to get more information.      

John Svensson: Convert from Drupal 8 tarball to Composer

Main Drupal Feed - Wed, 01/30/2019 - 20:46

If you were an early Drupal 8 adopter you've might have downloaded and installed your Drupal 8 sites by downloading a tarball or using Drush. We did as well, but the benefits of using Composer are so great that it's time to convert those in to being Composer-managed.

Luckily, grasmash has built a great Composer plugin called Composerize Drupal which does all the heavy-lifting for us.

Here's how we did it:

Before you even begin, make sure you branch out $ git checkout -b chore/composerize-drupal

And then we installed the Composer plugin globally:

composer global require grasmash/composerize-drupal

Consider the plugin options available:

  • Use the --exact-versions option if the site is big and complex. Especially if you don't have any good test coverage to ensure your site doesn't break. The option sets the constraints of your composer.json to the exact versions of your currently downloaded modules.

Now we run the command:

composer composerize-drupal --composer-root=. --drupal-root=. --exact-versions

Next:

  • Update your .gitignore and ignore the vendor/, core/ and modules/contrib folders. If the files were already commited you also need to remove them: Ignore files that have already been committed to a Git repository
  • Re-apply your patches! Since all the core code and contrib. modules are managed by Composer you'll need to add those patches to your composer.json:
    Something like this:
"extra": { "enable-patching": true, "patches": { "drupal/core": { "2492171 - Adds transliteration to uploaded file and images": "_kodamera/patches/use_new_transliteration-2492171-72.patch" } } ...

When you run composer install they are automatically applied for you. No more manually work here. Yay!

Do some regression testing and if everything looks fine, you're done! Commit and deploy :)

CTI Digital: Drupal Camp London 2019

Main Drupal Feed - Wed, 01/30/2019 - 16:46

Drupal Camp London is a 3-day event celebrating the users, designers, developers and advocates of Drupal and its community! Attracting 500 people from across Europe, after Drupalcon, it’s one of the biggest events in the Drupal Calendar.

DrupalCon News: Community Connection - Garvita Kapur

Main Drupal Feed - Wed, 01/30/2019 - 15:57

We’re featuring some of the people in the Drupalverse! This Q&A series highlights individuals you could meet at DrupalCon.

Every year, DrupalCon is the largest gathering of people who belong to this community. To celebrate and take note of what DrupalCon means to them, we’re featuring an array of perspectives and fun facts to help you get to know your community.
 

Blair Wadman: How do you place a block in a Twig template

Main Drupal Feed - Wed, 01/30/2019 - 15:16

There are various ways you can add blocks to regions in pages in Drupal. You could add it in the block interface, use Panels or Context. But what if you just want to place a block directly in a Twig template?

The simplest way to place a block in a Twig template is to use the Twig Tweak module. Twig Tweak is a very handy module that gives you a range of functions to make theming with Twig easier. Read on to find out how...

Craft of Coding: Drupal on OpenShift: The business value of OpenShift

Main Drupal Feed - Wed, 01/30/2019 - 14:50

Looking to achieve production grade Drupal deployment using Kubernetes? Find out the business value of running your Drupal site on OpenShift, the industry’s most advanced Kubernetes distribution. Somewhere around 2017, I recall migrating my blog(running Drupal 8 at that time) to Kubernetes, just to test the then uncharted Kubernetes waters attempting to understand the buzz behind […]

The post Drupal on OpenShift: The business value of OpenShift appeared first on Craft of Coding.

Drupal Association blog: Next Steps: Putting the Governance Task Force Recommendations into Action - Part 1

Main Drupal Feed - Wed, 01/30/2019 - 13:40

Towards the end of last year, the Governance Task Force concluded their six-month process and developed a list of thirteen recommendations for evolving Drupal's governance. This followed almost a year of efforts that engaged many stakeholders in the community to share thoughts on Drupal's governance model. Those recommendations were published in a blog, promoted by Dries, and made available in individual issues for community feedback.

We want to thank everyone for their participation in this process.

In particular we'd like to thank David, Ela, Stella, Lyndsey, Rachel, Hussain, and Adam as the leaders of the Governance Task Force.

I would also like to thank the many other community members who have been highly engaged in this process from start to finish. More than a hundred community members  attended community governance roundtables—both virtually and in person—or participated in one-on-one interviews, from across the globe.

Still more members of our community shared their voices in the issue queues, chat rooms, or discussions on these and other blog updates.

Finally, I want to thank all of the existing community bodies who have been crucial in bringing Drupal to this point, and will continue to be a fundamental part of our evolving governance. Groups like the CWG, the Core Maintainer Team, DD&I, the mentorship and contribution team, and a number of others play a critical role in our governance.

It reflects the tremendous care that everyone involved has for this community and a strong commitment to ensuring that this project continues to be a leader, not just in open source technology but also in open source community governance.

The next step is to put those recommendations into action. The Drupal Association is only one part of the community, and only one stakeholder in this effort, but there are a number of things we feel we can do to help move these recommendations forward.

In accordance with our values and principles, when evaluating potential actions, our goal is to identify immediate feasibility and prioritize impact. A number of the task force's recommendations are topics we can tackle very quickly, whereas others, like ones that require fundraising, may have a longer time horizon. Understand, this is not a commentary on the *importance* of any individual recommendation, but rather on which items can be executed quickly and which will take a more extended effort.

Part 1 of this series will focus on the immediate next steps that the Drupal Association can take to help support these recommendations. Part 2 will address the recommendations that will be an ongoing effort over the medium and long term.

Immediate next steps Grow the Community Working Group (CWG) to offer more support

There is already progress on the recommendation to "Grow the Community Working Group (CWG) to offer more support." Serendipitously, at the same time as the Governance Task Force recommendations were released, the Community Working Group submitted a proposal for a revised charter to Dries and the Drupal Association Board.

The revised charter included complementary changes in-line with the recommendations of the Governance Task Force. Perhaps most powerfully, the proposed changes included two key new elements:

  1. The CWG would switch from reporting to Dries himself to a subcommittee of the Drupal Association Board that consists of a three-member review panel: the two community elected board members and a third person external to the community. This leverages expertise from another open source project and offers a different perspective outside of Drupal.
  2. Providing support and resources for proactive initiatives to enable community health and support efforts. The CWG has long wanted to increase its ability to improve health and equity in our community and the DA can now support these activities.

This change also ensures that the Community Working Group has the appropriate legal and insurance support for its activities, clarifies the membership process, provides term limits for membership, and provides financial support for CWG activities.

The Board was pleased to receive this proposal from the Community Working Group, and voted to adopt the proposed changes in the Dec 5, 2018 board meeting. For more details, review the original proposal from the CWG here, as well as the official charter page which reflects the new updated charter.

Build a new community website to centralize communication and promote new opportunities

Another recommendation of the Governance Task Force that we are able to immediately act on is the recommendation to centralize communication and promote new opportunities for all aspects of the Drupal community. In particular this recommendation focuses on centralizing information about events across the globe, multilingual support, an improved home for regional groups and local associations, and community governance and support.

This recommendation aligns with one of the Drupal Association 2019 goals, which is to "Help the community follow the same path, by amplifying the voices of those who define that path." (For a little more context on our 2019 goals, check out our recent newsletter).

The task force specifically recommended a new dedicated community website, with functionality in many ways similar to an updated Groups.Drupal.org, as well as multilingual support and a strategy for coordinating community messaging and efforts. I'm pleased to report that this is an area in which the Drupal Association has already begun work. While our technical implementation will remain on Drupal.org, rather than as a separate sub-site, the proposed recommendations align closely with initiatives Association staff are working on right now.

Community Liaison Rachel Lawson has already worked with members of the community to create a new Drupal.org/Community portal. This initial change is just the first step: providing a pathway for various personas to find their way to the right part of the community to meet their interest and needs. As this is being written, we are also working on enhancements in line with the Governance Task Force recommendation: support for dedicated sections for key community bodies and providing collaboration tools similar to those that were first put in place for groups.drupal.org many years ago, but enhanced for our current needs.

Expect to hear more about these changes soon.

In the meantime, if you belong to a working group or similar, Rachel Lawson would like to speak with you about making space for your use on Drupal.org/community.

A glossary of key community terms, in clear, translatable language

The Drupal community has a long history as one of the largest and most closely knit communities in open source. On the whole, this has been tremendously positive, and is something for us to take great pride in, but the Governance Task Force rightly recognized a key concern that this creates: it does not scale. A lot of the language we use to describe our community, our leadership, and our governance is undefined or taken for granted. Even for longtime very engaged members there is no guarantee that our personal understandings of key community terms are shared.

Fortunately, we should be able to improve our collective understanding of what these critical terms mean. By assembling an engaged group of community members, DA staff, and existing project leaders we should be able to create an initial glossary of this key community language, and with the help of regional leaders in our global community, ensure that the language is clear and easily translatable.

If you would like to participate in this effort, you can do so in this issue.

Improving collaboration/understanding between the Drupal Association and community

This is another of the Governance Task Force recommendations that can both receive immediate action, but will also always be an ongoing process of iteration and improvement. The recommendation to improve the ways that the Drupal Association collaborates with the community, and in turn to improve the community's understanding of the Drupal Association's work, is a critical one. As the interim Executive Director at the Association and 13-year community member, this is also work very close to my heart.  

There are many steps we can take to move this recommendation forward, but a few of the ones we've taken in the last months or are planning to take in the new year include:

Lastly, here at the Association we can and should continue to strive toward communicating the existing ways we serve the community, many of which could help to support recommendations of the Governance Task Force. For example, when Kevin Thull recently announced the unofficial Drupal recording initiative, it had not occurred to him to consider applying for the Community Cultivation Grant program. This was eye-opening for us, because if it does not occur to even a highly engaged community member like Kevin to apply for a grant, how can we expect others to be aware of the opportunity?

By publicizing Kevin's story, and those of others who have participated in these programs, we encourage others to apply for these opportunities. The pool of funding for these programs is not unlimited, but we certainly encourage community members to apply.

Just the beginning

Acting on these first recommendations is only the beginning. In part 2 we'll address the additional recommendations of the Governance Task Force, and in particular how the Drupal Association can support these more medium and long term efforts. The work of evolving Drupal's governance will be a continuous process, and the Drupal Association is only one stakeholder in the outcome, but by working together with the community we believe we can take significant strides in this direction.

OSTraining: How to Build Drupal Slideshow Using Views and Slick

Main Drupal Feed - Wed, 01/30/2019 - 12:20

One of our OSTraining members asked how it was possible to make multiple displays for Drupal 8 slideshows.

In this tutorial, I will show you how to build a slideshow that uses your article content type to make a slideshow with a teaser.

Drupal Atlanta Medium Publication: How to Ignore Local Changes to Your settings.php File in Drupal 8 with Git

Main Drupal Feed - Wed, 01/30/2019 - 10:40
Why not just use the .gitignore file?Photo by Tim Wright on Unsplash

As many of you know, I am a huge Pantheon hosting fanboy and can still remember the days during the beta launch of being blown away that I have three different environments out of the box, with dev, test and live. Another great service they added recently is that all sites receive SSL certificates automatically and all you have to do is redirect all traffic to use HTTPS. In Drupal 8 they suggest doing this in your settings.php file.

After adding the redirect code everything works great until you fire up your local environment (I am currently using Lando) and you are getting a blank screen. After further investigation, you notice it’s the redirect to HTTPS that is causing the issue. My first thought was to make sure my settings.local.php file was correctly being used but for the life of me, I could not get that file to override the redirect code in my settings.php file. If you are reading this and have a better idea on to how to accomplish this then let me know in the comments :)

My next thought was to simply add the settings.php file to my .gitignore file but when I went to my production website I was prompted to reinstall my Drupal site. When adding a file to .gitignore the repo pretends it doesn’t exist so therefore Drupal was telling me to reinstall. Whoooops, my production site kind of needs this file hahahah. So I thought to myself,

How can I ignore my settings.php file in my local repo but still have the original file on production?

After attending Google University for 10 minutes, I stumbled upon a medium post by Ian Gloude regarding the git update-index command. In their article “Git skip-worktree and how I used to hate config files,” there is a great explanation of the concept, but for me the lightbulb really went off when reading the Git documentation hint, “see also git-add[1] for a more user-friendly way to do some of the most common operations on the index.” Basically git update-index tells Git what to watch in your repo.

Now that we understand what git update-index does, the real magic happens with the options that you can add to the command. In this case, the option that Ian Gloude suggested is the --skip-worktreeoption. The Git documentation explains that the skip worktree bit tells the git index to assume the file is unchanged from this point on regardless if there is an actual change. So what does this mean for us? It means you can change your file on your local environment while the original file on your production server remains unchanged.

Here is the command I use prior to uncommenting out the pantheon redirect code.

git update-index --skip-worktree /sites/default/settings.php

When I need to make some changes to the production settings.php file I can tell Git to watch the file again with this command.

git update-index —-no-skip-worktree web/sites/default/settings.php

Anyway, I hope this helps you keep your local and production environments running smoothly while maintaining your settings differently.

If you are interested in contributing a blog post or want to get more involved with the Atlanta Drupal Users Group (ADUG) please feel free to reach out info@drupalatlanta.org

How to Ignore Local Changes to Your settings.php File in Drupal 8 with Git was originally published in Drupal Atlanta on Medium, where people are continuing the conversation by highlighting and responding to this story.

Portfolio theme

Drupal Themes - Wed, 01/30/2019 - 10:13

Flocon de toile | Freelance Drupal: Switch an existing Drupal 8 project under composer

Main Drupal Feed - Wed, 01/30/2019 - 10:04

Composer has become a must for relatively ambitious Drupal 8 projects. Even if it is still possible to initialize a Drupal 8 project with drush or simply by downloading a zip archive, these two methods can become limiting over time. Or at least not to facilitate the installation of new modules with dependencies on third-party libraries.

Another of the reasons I have encountered, why some Drupal 8 projects have not been initiated by Composer, is the lack of Composer support on some shared hosting, even so-called professional ones.

Agiledrop.com Blog: The Story of Agiledrop: Cultivating Strong Relationships with Clients

Main Drupal Feed - Wed, 01/30/2019 - 09:40

We've started a series of blog posts that tell the story of what makes our developers successful when working with other Drupal teams. The third chapter analyzes the steps we take to form and maintain a strong, healthy relationship with our clients.

READ MORE

Drupixels: Resolve Drupal error: unable to unlink old 'sites/default/settings.php': Permission denied

Main Drupal Feed - Wed, 01/30/2019 - 06:01
Everything was going well with your Drupal setup on local and then GIT STRICKS BACK. You are trying to do a git checkout and moving to a different branch but now you have an error of GIT not able to unlink file and a modified file.

OSTraining: How to Pin Images in Drupal 8

Main Drupal Feed - Wed, 01/30/2019 - 03:06

The "Imagepin" module allows you to create pins inside an image and display descriptive text when you hover over those pins.

This is useful because the image will not appear clogged with lots of descriptive text. From the other hand, since users like (unconsciously) this kind of interaction, it will help promote your content and increase the click rate of the “calls to action” of your page.

Electric Citizen: Spring conference updates

Main Drupal Feed - Tue, 01/29/2019 - 20:42

We're in the deep of winter in Minneapolis, but thinking about spring and the upcoming conferences we'll be attending. Or at least later this winter.

Here's a short list of what we've got scheduled so far, and where we could meet up.

Nextide Blog: Innovating Healthcare with Drupal

Main Drupal Feed - Tue, 01/29/2019 - 18:14

Innovation within Canadian healthcare continues to provide better care experiences for those using the system.  As the population ages and strains our facilities to care for those nearing their end-of-life, hospitals are looking at technological solutions to ease the burden on emergency rooms and give people access to accurate and timely healthcare.   Nextide partnered with uCarenet, a Toronto-based e-health company, to create an innovative health and wellness application to monitor the condition of palliative care patients for a major Canadian hospital.

 

Drupal blog: European Commission will start offering bug bounties for Open Source software

Main Drupal Feed - Tue, 01/29/2019 - 17:39

This blog has been re-posted and edited with permission from Dries Buytaert's blog.

The European Commission worked with the Drupal Security Team to set aside 89,000€ (or roughly $100,000 USD) for a Drupal bug bounty.

The European Commission made an exciting announcement; it will be awarding bug bounties to the security teams of Open Source software projects that the European Commission relies on.

If you are not familiar with the term, a bug bounty is a monetary prize awarded to people who discover and correctly report security issues.

Julia Reda — an internet activist, Member of the European Parliament (MEP) and co-founder of the Free and Open Source Software Audit (FOSSA) project — wrote the following on her blog:

Like many other organizations, institutions like the European Parliament, the Council and the Commission build upon Free Software to run their websites and many other things. But the Internet is not only crucial to our economy and our administration, it is the infrastructure that runs our everyday lives.

With more than 150 Drupal sites, the European Commission is a big Drupal user, and has a large internal Drupal community. The European Commission set aside 89,000€ (or roughly $100,000 USD) for a Drupal bug bounty. They worked closely with Drupal's Security Team to set this up. To participate in the Drupal bug bounty, read the guidelines provided by Drupal's Security Team.

Over the years I've had many meetings with the European Commission, presented keynotes at some of its events, and more. During that time, I've seen the European Commission evolve from being hesitant about Open Source, to recognizing the many benefits that Open Source provides for its key ICT services, to truly embracing Open Source.

In many ways, the European Commission followed classic Open Source adoption patterns; adoption went from being technology-led (bottom-up or grassroots) to policy-led (top-down and institutionalized), and now the EU is an active participant and contributor.

Today, the European Commission is a shining example and role model for how governments and other large organizations can contribute to Open Source (just like how the White House used to be).

The European Commission is actually investing in Drupal in a variety of ways — the bug bounty is just one example of that — but more about that in a future blog post.

 January 28, 2019

 1 min read time

 Permalink

Agaric Collective: Agaric 2018 Year in Review - Expanding the Open Web, Building the Solidarity Economy

Main Drupal Feed - Tue, 01/29/2019 - 15:13

As it was for much of the world, 2018 was a combination of extremes for Agaric and the free and open web. Happily, we expanded our team, launched new sites, and empowered our clients through libre software. Unhappily, many of us and our communities endured health issues, political instability, and the effects of climate change.

For the open web, we disappointedly saw the United States officially end Net Neutrality while we excitedly watched the European Union begin enforcing comprehensive privacy laws with its General Data Protection Regulation. We were disgusted by tech giants like Facebook and Palantir diverting and deflecting from the abuses they carry out, but we were also inspired by workers at companies like Amazon and Google forcing their bosses to do better.

In looking back, we celebrate the victories and learn from the challenges—with our eyes set on serving our clients better, expanding the open web, and building an economy based on solidarity rather than exploitation.

To that end, here are the highlights of our work from last year and our intentions for the new year.

Read more and discuss at agaric.coop.

Pages