This is the first in a series of articles that will document lessons learned while exploring using Ember as a decoupled client with Drupal.
You will need to have Ember CLI installed and a local Drupal 8 (local development assumed). This initial series of articles is based on Ember 2.14 and Drupal 8.3.5 but my initial development was over 6 months ago with earlier versions of both Ember so this should work if you have an earlier ember 2.11 or so installed.
You should read this excellent series of articles written by Preston So of Acquia on using Ember with Drupal that provides a great background and introduction to Ember and Drupal.
Templates and tasks make up the basic building blocks of a Maestro workflow. Maestro requires a workflow template to be created by an administrator. When called upon to do so, Maestro will put the template into "production" and will follow the logic in the template until completion. The definitions of in-production and template are important as they are the defining points for important jargon in Maestro. Simply put, templates are the workflow patterns that define logic, flow and variables. Processes are templates that are being executed which then have process variables and assigned tasks in a queue.
Once created, a workflow template allows the Maestro engine to follow a predefined set of steps in order to automate your business process. When put into production, the template's tasks are executed by the Maestro engine or end users in your system. This blog post defines what templates and tasks are, and some of the terms associated with them.
This is part 2 of our series on developing a Decoupled Drupal Client Application with Ember. If you haven't yet read Part 1, it would be best to review Part1 first, as this article continues on with adding authentication and login form to our application. Shortly, we will explore how to create a new article but for that we will need to have authentication working so that we can pass in our credentials when posting our new article.
The Maestro Engine is the mechanism responsible for executing a workflow template by assigning tasks to actors, executing tasks for the engine and providing all of the other logic and glue functionality to run a workflow. The maestro module is the core module in the Maestro ecosystem and is the module that houses the template, variable, assignment, queue and process schema. The maestro module also provides the Maestro API for which developers can interact with the engine to do things such as setting/getting process variables, start processes, move the queue along among many other things.
As noted in the preamble for our Maestro D8 Concepts Part 1: Templates and Tasks post, there is jargon used within Maestro to define certain aspects of the engine and data. The major terms are as follows:
In the previous tutorial, you learnt how to create a modal in a custom module. If you missed it, you can check it out here.
DrupalCon Europe plays an important role in moving Drupal forward. However, with waning attendance and financial losses, it’s time to find a new path forward so it is sustainable and continues to provide unique value. This blog proposes a better path forward for hosting a sustainable and valuable DrupalCon Europe . This blog is part of a series that includes:
A new path forward for DrupalCon Europe
We are now at the end of our blog series. Thank you for digesting so much content. Determining the strategic direction for a region’s event is rather complex and there are many facets to understand. It was important to us to share all of the details with you.
The Drupal Association is a mission-based organization and not a business that makes purely financial decisions. Rather, we employ staff who are personally invested in achieving our mission. We feel it is imperative to find the best way to serve the European community and we took great care over the last several months to find a path forward that would achieve this.
We don’t see this exercise as just determining an event’s strategy, but how can we further the special and profound human experience that takes place when Drupalers come together in person.
In the end, we see that Europe needs a clear goal for DrupalCon so that the energy put into creating it truly strikes at the community needs, strategically moves the project forward in a sustainable way, and creates the human experience that Europeans want. Currently, the community is expressing competing goals. We believe that the European community is best suited to determine what the region needs DrupalCon to achieve, and especially because of the feedback from the community discussions, we want to give the region more agency to drive DrupalCon’s programming.
A Little History
The Drupal Association became an official 501(c)3 U.S. non-profit in 2011, and our first focus was hosting DrupalCon London (ok, Croydon). Since that time, Drupal events have grown and matured, like DrupalCamp London, Dev Days, and Frontend United. We are thrilled to see Drupal events in Europe doing so well and we are thankful for the volunteers who are making that happen.
What this maturity likely means is that Europe has the ability to drive DrupalCon Europe forward, tailoring it more closely to the region’s needs. We just need an operational model that allows us to give the event to the community without negatively impacting the community.
When DrupalCon was produced by the community before DrupalCon London, the event became too big for volunteers alone to manage. It put a lot of strain on the community. That’s why the Drupal Association took over event production. In the process, we managed to professionalize the event, but we also applied a US model and we know that doesn’t feel authentic to attendees. The waning attendance and sponsorship reinforces that the event is not meeting needs, and the financial losses and staff working at over-capacity highlights that we are applying the wrong operational model.
It is time to break the mold and approach DrupalCon Europe completely differently. I believe the best approach to explore is a licensing model. That’s a contractual term for giving an entity the right to run a DrupalCon.Licensing DrupalCon
There may be several operational models to explore and I want to hear about them from you. Until then, I’d like to share why we should consider the licensing approach.
Licensing gives the European community the agency they have asked for so they can create an event that is more European and has more desirable content. Once we get this model to work in Europe, we can leverage this creativity so other regions and countries can have DrupalCon too, like China, India, Australia, Brazil, or Costa Rica. This change expands DrupalCon’s reach and impact, moving the project forward in a strategic and global way.
While I have the rough concept in mind, I don’t have all the answers on how to license DrupalCon, but here are some broad brush strokes:
We want to give DrupalCon to a community-based entity that has proven event experience and demonstrated ability to serve the community. The entity needs to be grounded in the community so they can decide how to best serve the region’s needs and move the project forward in the right ways.
The Drupal Association would have some requirements that protect the brand experience such a Driesnote to kick off the event, the venue needs to meet certain needs like accessibility, the Code of Conduct must be applied so the event remains welcoming, there is diversity in speakers and attendance, and the official DrupalCon branding is used.
The Drupal Association would also have financial and reporting requirements, but we need to feel our way through what this looks like. We encourage the event organizer to make the event profitable and we would apply a license fee schedule as they become more sustainable.
The Drupal Association wants the event organizers to have freedom to tailor the event to the region’s unique needs. What Europe needs may be completely different from what Brazil needs, should they want their own DrupalCon as some point. The event organizer would pick who the target audience is, the programming structure, etc.
Clearly there are many details to work out if we go down this path. However, we can look to other Open Source Software projects who use this model to gain insights and best practices.
It will take time to set up this structure. The Drupal Association needs to work on this internally and as we mentioned before, we have a serious capacity issue that prevents us from working on this initiative while also producing DrupalCon.
The only way to free up staff capacity to work out a long-term solution is for Drupal Association to not host DrupalCon Europe in 2018.DrupalCon Europe 2018
“What? Did she really just say what I think she said?” Yes, it’s true. I did say that the Drupal Association will not be hosting DrupalCon Europe in 2018. It doesn’t feel good saying this and I labored over this decision with others on the board and in the community for a long time. But, sometimes you have to take a step back to take a big step forward. Europe deserves a better DrupalCon that feels authentic and meets their needs. And countries around the world deserve access to this very special event.
We know that these changes could feel like Europe is being abandoned or not supported as much as the U.S. We empathize with those who may feel this way and that is certainly not what we want to convey. I want to be clear that the Drupal Association will definitely support Europe in 2018.Supporting European Drupal Events in 2018
European Drupal events are strong and make a big impact. They are important Drupal contribution and adoption engines and we want to give those engines more fuel in 2018. In order to do that, the Drupal Association commits to the following:
Dries will keynote some European Drupal events
Drupal Association will aggregate and market European Drupal events to our lists and through our channels
Drupal Association will email our sponsors, encouraging them to sponsor camps
Drupal Association wil host 2-3 community organizer virtual round tables to foster knowledge sharing and problem solving.
What are other ways we can support Europe in 2018?
Here are some other ways we can support Europe in 2018. Let us know if these ideas could better serve the European community:
- Camps bid to host DrupalCon Europe 2018. Camps have very similar programming to a DrupalCon and Dries could provide a Driesnote, While this is a viable option to keep DrupalCon alive in 2018, event organizers pointed out that this has some downsides to consider.
The camp will need to cap the attendance to the size for their venue.
Even though the expectation would be to run the camp as usual with the additional DrupalCon elements like a Driesnote, organizers and volunteers could get burnt out, and that helps no one.
Camps bid to be the “Official Camp of the Region in 2018”. I’m sure we can come up with a better name, but the idea is that camps bid for why community members should come to their camp. Then they get the “Official Camp To Go To in 2018” status and the Drupal Association will help promote that camp. Community organizers felt this idea has some merit because:
It doesn’t put pressure on camps to be something more. They can produce the program they are used to providing. Of course, more people may attend that camp and the organizers have to be prepared for this - or know when and how to cut off registration so they are not overwhelmed.
We create a new concept that can be leveraged in other regions
What do you feel is the best way to serve Europe in 2018? We want to hear. Tell us in the comments section and or meet us in the meetings listed below.What About DrupalCon North America?
Community members asked me why we are only making a change to DrupalCon Europe and not to DrupalCon North America. It’s a good question. The simple answer is that DrupalCon North America is financially stable and growing. It provides 45% of our total revenue and that funds Drupal.org. The Drupal Association needs to be very mindful that changes don’t impact this important funding source.Learn More at DrupalCon Vienna
Again, thank you for taking this journey with us to understand the challenges we have been facing with DrupalCon Europe and how we can solve them, together. I am encouraged by the many community members who have helped us and I look forward to moving this discussion forward in person at DrupalCon Vienna.
Please join me at the following sessions to discuss 2018 and beyond:
- Tuesday from 10:45-11:45 - Galerie 5-6
- Tuesday from 14:15-15:15 - Galerie 5-6
Drupal Association Board Meeting
Post DrupalCon Virtual Meeting
- Thursday 16:00 CEST
- For those that can not attend DrupalCon Vienna, we will host a webinar to share themes from the DrupalCon meetings, here your additions to the discussion, and talk about next steps.
It has always been said that “the book is better than the movie.” This blog post gives a behind-the-scenes look at the writing that inspired the Friday 5 video.
Due to the Mediacurrent Friday 5 being a series that lasts 5 minutes, and the unfortunate absence of a suitable ”Friday half hour to 45 minutes” show, the content would be again, reimagined.
Well, today I'm making custom breadcrumbs.
If you or others have done things the right way, you can probably use Easy Breadcrumbs or Views Breadcrumb before doing it this way. But if you haven't, stick around and learn about Drupal breadcrumbs.
There are multiple stack overflow posts on this but none of them actually seem to work for me. It seems that the code for Breadcrumbs in core has changed over time.
We want to make your project a success.Let's Chat.
All about one Drupalero's experience in the Drupal community.
Welcome to the latest episode of On the Air with Palantir, a long-form (ad-hoc) podcast by Palantir.net where we go in-depth on topics related to the business of web design and development. In this episode, Allison Manley is joined by Juan Daniel Flores of Rootstack, and Juan dives into the Drupal world of Latin and Central America.iTunes | RSS Feed | Download | Transcript
Subscribe to all of our episodes over on iTunes.
We want to make your project a success.Let's Chat. Transcript
Allison Manley [AM]: Hi, everyone. Welcome to On the Air With Palantir, a podcast by Palantir.net where we go in-depth on topics related to web design and development. I'm Allison Manley, Sales and Marketing manager. Today, my guest is Juan Daniel Flores of Rootstack. Juan spent some time with me a few months back telling me about all the exciting things happening with Drupal in Latin America. Here we are at DrupalCon Baltimore 2017-
Juan D. Flores [JDF]: That's right.
AM: ... in the convention center at the corner of Pratt and Charles Street. I am sitting with ...
JDF: Juan Flores from Rootstack from Panama.
AM: From Panama. You came all the way from Panama.
JDF: Yes, sunny, tropical Panama. Yeah. The temperature is quite a good a change for me.
AM: Is it?
JDF: I was born in Colombia, in Bogota, actually. The temperature is more or less like this. I really miss the cool temperature, because in Panama, sometimes it gets really, really hot.
AM: Well, we're welcome to give you a nice, rainy break, so ...
JDF: Yeah, I appreciate it.
AM: Is this your first Drupal Con?
JDF: Yeah, this is my first personal, my first Drupal Con in the States, but we have been attending Drupal Con like, since five years ago. We are three partners, and they do most of the traveling.
AM: Okay. Excellent. How long have you been involved in Drupal?
JDF: We have been involved with Drupal like from seven years ago right after college. We graduated, and we got our degrees, and we started the company. We started with Drupal right away. We learned about Drupal, actually, by a friend in the college. It was like we saw the tool. We saw all the things that you could do, and we were like hooked up, like, "We have to do this. We have to use this." It's been quite a long time.
AM: Wow. That's great. Were you self-taught or ...
JDF: Totally self-taught. In the university, they teach you certain things, but to be, to thrive in this world, you really have to be very proficient in learning by yourself. You have to be active. You have to be checking what's going in the world. Thanks to our desire to know more, we picked it up and here we are seven years later.
AM: And here you are. Glad to have you. You call yourselves the Drupaleros, sort of jokingly.
JDF: Yeah, that's the term we use for Drupal. That's in Spanish. It's a term that we use in general.
JDF: Yeah. Universal.
AM: So that's not just the Panamanian-
JDF: Exactly. Exactly.
AM: Okay. I feel like there's a presentation next year for just the Spanish-speaking Drupaleros. I feel like there's some sort of presentation you should make around that and what's happening in Latin and Central America.
JDF: That will be interesting. Even though like I feel that we're a little bit late to the party, in terms of doing stuff, there has been a lot of work that has been done by Latin developers. For example, there's Jesus Olivas, which is ... Well, and the team from We Know It, that they have been working hard with the Drupal console project, which is picking up, really, a great amount of fans. He gave a talk yesterday. He's from Mexico. There's another guy. His name is Omers. He's also from Mexico. The other guys, Anso and Kenya are from Costa Rica.
AM: How many would you say there are total between Latin and Central America, you know, that you keep in touch with on a regular basis working in Drupal?
JDF: It's hard to tell to know a certain number because, unfortunately, the community there is like a little bit shy. But I can say that, for example, if I can measure events that we have gone to, for example, the DrupalCon in Costa Rica, or the DrupalCon Central America that we did a couple years ago, I would say we could see around 400, but it's hard to ... They show up for events. There are a lot of people that show at events. It's the the building the community that's hard.
AM: How did you start out? Tell me about the beginnings of your business, then.
JDF: We were in college. One of the partners approach to us. He told us like, "Hey, I think we should do this. We should make a company for our own." We are good, each one, in our own stuff. For example, one of the partners is very good at business development, organizing. The other one is very good at developing. He's a very strong skill set. I'm more like the creative one in terms of design, in terms of implementing the science. We're sort like a match in terms of our skills. We started that in 2010, and we slowly grew. We recruited guys fresh out of college from our own university. Then, we started to build the team. One of the things that I have heard here is that it's hard to find Drupal developers. Which if it's hard for you, it's harder for us. It's been years of finding good people that we think that can be a good fit and training them. I think there's a value in that, in home-growing the developers. Because if they aren't there, you have to make them.
AM: Right. How big are you now?
JDF: We are 25.
AM: Oh, so you went from 3 to 25 in just seven years.
JDF: We have 18 developers. Then marketing sales, designers, so yeah. We hope to keep growing, and yeah. Basically, the objective is to be bigger, to go for more services. Even though we started as a Drupal shop, now we're doing more stuff. We're doing automations. We're doing mobile development. We're doing interesting projects in terms of challenges. For example, last year we did a project for a company here. Basically, we did a mobile app in Ionic that you could turn on, turn off, set the temperature of your spa machine. They sell spa machines that have a wifi antennae. You could be in your office, and you say, "Oh, I'm going home." You start the spa. You set the temperature. When you get there, there it is.
AM: That's excellent.
AM: That's quite a range of services that you do provide already, even if you feel like you want to add more.
JDF: Yeah, yeah. It is to find projects that are challenging and interesting. That's the what we're looking for.
AM: What would you say is your main client base or what vertical?
JDF: Basically, companies that split in two, in terms of half the company works with agencies here in the States providing Drupal services, so back-end, front-end development, and the other half of the team works with local clients. In terms of local and regional clients, our main verticals are government, banks, certain industries, like ... You have big clients like supermarket chains, people that are looking for very complex web projects, or automations, or yeah, that kind of solutions that we can provide. Yeah, that's what we are ... The companies, like two companies in terms of what we focus on.
AM: Fair enough. Your first DrupalCon, what do you think so far?
JDF: It's been great. I mean, the level of the sessions have been great. I really like the fact that people are very open to talk, very friendly. I know that in our conferences that, for example, I have been, it's harder to meet people, to find a point of conversation where you can start. But here, it has been great. The parties have been great, also. They provide a good space for talking. For example, yesterday, I was with the guys at Lullabot. They were super friendly, super fun. We have a lot of fun. Yeah, I really like. It's right what they say about the Drupal community. It's very open and very ... Well, even though what has happened recently, I think the people here are very good people, you know?
AM: I would agree with that.
JDF: Well, I hope that you go next year to Nashville.
AM: I will be there in Nashville. I would love to go to Costa Rica if I could swing it, but-
JDF: Yeah, so there in August. It's super fun. There's a good vibe always. We always do some, like after the camp, we always do like a trip to an island, or a beach, or-
AM: Forest. Something.
JDF: Yeah, very relaxing.
AM: Sounds amazing.
JDF: You can add your vacations and you do a-
AM: Any others to look forward to or ...
JDF: That's the ones I think right now the top of my head.
AM: All right.
JDF: I think Mexico is organizing one, too.
AM: Look forward to it.
AM: Thank you so much, Juan.
JDF: Yeah, look forward to seeing you. Thank you.
AM: Thanks for listening. Follow us on Twitter at Palantir or read our blog at palantir.net. Have a great day.
It's not always possible to use a path to determine block visibility.
Therefore, here is how you programmatically disable a block on specific view without recourse to path.
At DrupalCon Vienna One Shoe will host the very first Drupal Marketing Sprint on Thursday, 28 September 2017. The goal is for Drupal businesses and agencies to work together to create marketing materials that promote Drupal as a whole. Come prepared with examples of Drupal marketing material that has caught your attention so you can start the sprint with something to work with. Read more in the following blog from Michel van Velde, One Shoe CEO.
We shall do a deep dive of Drupal's database schema. For the purpose of simplicity, we shall deal exclusively with SQL queries and not step out of DB land unless its required. By doing this exercise, we can derive Drupal's schema from first principles. Let's start with a humble node, more specifically, an article content type which ships by default with Drupal's core. It consists of the node ID, the node type and node properties, i.e. the node title and node status. We are assuming only one bundle, the "article" bundle for now.
With the end of September, DrupalCon Vienna is also coming closer and we can't wait to welcome you to our booth #S08. As a Silver sponsor of the event, we'll have the chance to present continuous update management to you on site. But - we also can't wait to learn a lot from other agencies and attendees! At DrupalCon there's always a chance to learn something new, be it a whole new approach or a connecting piece of unidentified issues - by asking but most of all by listening.
Drupal Drupal Community Drupal Planet Drupalcon Business Events
Wow and Sell vs. Understand and Aha...
Proprietary Content Management Systems (CMS) and online form builders have a lot of immediate wow, including snazzy marketing and very fancy user interfaces. I admit it: I like wowing people and the Webform module's user experience with video tutorials and it's very slick-looking elements like signatures and likert are meant to impress you. The Webform module's "Aha" moment happens when you grasp the software's full potential. Suddenly you understand the Drupal mantras, "There is a module for that; There is a hook for this; Anything and everything is customizable." Aha indeed.
The Webform User Interface/Experience
Circling back to Webform module's user interface and experience, there’s a limit to how much wow I can build. On the flip side, there is unlimited aha available. The latest releases of the Webform module includes a significantly improved UI with Ajax, element previews, tabbed dialogs, and more. The Webform module may never have a slick WYSIWYG drag-n-drop user interface... I’m okay with that. I’d like to share with you the current state of the Webform UI/UX and talk about some key concepts.
The current user interface for the Webform module leverages existing UX patterns from Drupal core. For example, using a modal dialog for creating new elements was inspired by the Blocks UI. The Webform module also includes support for core's experiment system tray. My goal is to provide "fluid user experience" that is logical and works for all users while providing an incredible amount of configurability and flexibility.
Here is latest and relatively final Webform UI/UX.
It’s not how you build the webform but what you do with the webform submission.
The actual form builder is not the most important feature of the Webform module. Without a doubt, generating form and submission handling is by far the most important aspect of...Read More
In last few years, protecting data from an unauthorised use has become a challenging task. Recently, we came across a similar situation while working on a media and publishing industry project where most of the content was used through services. And we were requested to protect the content from unauthorised use and help in stopping such practices.
Here in this scenario, RESTful Web Services API played a significant role in overcoming the situation. However, in some cases, the default RESTful API doesn’t work effectively and leave the requirement unfulfilled. In this case, we will create a custom REST method that helps you to access nodes using API keys. Let’s see how we can achieve this?
Here we need to deal with two things:
- Create a View to export data…
My personal site is now officially migrated onto Drupal 8! I had first attempted a migration of my site back when Drupal 8.0 was released but had a few issues. With Drupal 8.3 it was nearly flawless (maybe even 8.2, but I had put the idea back burner.) I did have some interesting issues to workaroundMissing filter plugins
My migration process was halted and littered with errors due to missing plugins, specifically around my text formats. The culprits were: