Category Archive for: development

rfp-robotRFP ROBOT: Website Request for Proposal Generator

The time has come for a new website (or website redesign), which means you need to write a website request for proposal or web RFP. A Google search produces a few examples, but they vary wildly and don’t seem to speak really to your goals for developing or redesigning a new website. You need to write a website RFP that will clearly articulate your needs and generate responses from the best website designers and developers out there. But how?

Have no fear, RFP Robot is here. He will walk you through a step-by-step process to help you work through the details of your project and create a PDF formatted website design RFP that will provide the information vendors need to write an accurate bid. RFP Robot will tell you what info you should include, point out pitfalls, and give examples.

New Video Class: Building Joomla Extensions With Component Creator

In the other classes in the “Joomla 3 Development” pathway, we showed you how to code your own extensions. In this week’s class, “Building Joomla Extensions With Component Creator, we show you how to use the Component Creator service to speed up your development. This online tool quickly creates the complete, installable framework for your site. In this class, Cory shows you how to create a com_movies extension with reviews, release dates, actors, genres and much more. All this without writing a line of code! [[ This is a content summary only. Visit for full links, other content, and more! ]] Source:

A Look Back at Viget’s First Apprenticeship Cohort

This week, our first cohort of apprentices wrap up their 10 week-long Viget experience.  The apprentices are filling out feedback surveys, their advisors are preparing their final review lunches, and Erica is starting to connect with applicants for our next cohort.  Before we all move on to our next challenge, I want to take a step back and reflect on our program design and the exceptional folks who joined in our first official cross-disciplinary apprenticeship class. Our Program We designed the Viget apprenticeship program with three main areas for learning, each one reinforcing the other: Discipline-specific learning & trainingGlobal curriculumClient work Discipline-specific learning & training Each apprentice had a dedicated mentor with whom they met each week. Mentors were responsible for helping apprentices ramp up on specific skills with increasing levels of autonomy. This discipline-specific training was provided 1:1 and was based on the apprentice’s knowledge and needs. For example,…

Read More →

An update on the Layout Initiative for Drupal 8.4/8.5

Now Drupal 8.4 is released, and Drupal 8.5 development is underway, it is a good time to give an update on what is happening with Drupal’s Layout Initiative. 8.4: Stable versions of layout functionality Traditionally, site builders have used one of two layout solutions in Drupal: Panelizer and Panels. Both are contributed modules outside of Drupal core, and both achieved stable releases in the middle of 2017. Given the popularity of these modules, having stable releases closed a major functionality gap that prevented people from building sites with Drupal 8. 8.4: A Layout API in core The Layout Discovery module added in Drupal 8.3 core has now been marked stable. This module adds a Layout API to core. Both the aforementioned Panelizer and Panels modules have already adopted the new Layout API with their 8.4 release. A unified Layout API in core eliminates fragmentation and encourages collaboration. 8.5+: A Layout…

Read More →

Robust React User Interfaces with Finite State Machines

User interfaces can be expressed by two things: The state of the UI Actions that can change that state From credit card payment devices and gas pump screens to the software that your company creates, user interfaces react to the actions of the user and other sources and change their state accordingly. This concept isn’t just limited to technology, it’s a fundamental part of how everything works: For every action, there is an equal and opposite reaction. – Isaac Newton This is a concept we can apply to developing better user interfaces, but before we go there, I want you to try something. Consider a photo gallery interface with this user interaction flow: Show a search input and a search button that allows the user to search for photos When the search button is clicked, fetch photos with the search term from Flickr Display the search results in a grid…

Read More →

What You Need To Know About Mozilla’s Project Common Voice

The rise in mobile use has paved the way for voice to become a necessary feature in online browsing and communication. As more people rely on mobile technology to browse pages and do a quick online search, the need for voice technology has increased dramatically. This is probably the reason why Mozilla has ventured into a breakthrough endeavor known as Project Common Voice. What is Project Common Voice? Mozilla’s new project aims to make voice technology an open-source resource. According to the Common Voice website, bulk of voice technology is controlled by private companies that don’t share their tech data with the rest of the world. Mozilla wants to remove the barriers to innovation, leading them to launch the Common Voice project. In a nutshell, Common Voice opens up the trending technology of voice to contributors and developers. The aim here is to promote the use of voice technology by…

Read More →

An update on the Media Initiative for Drupal 8.4/8.5

In my blog post, “A plan for media management in Drupal 8”, I talked about some of the challenges with media in Drupal, the hopes of end users of Drupal, and the plan that the team working on the Media Initiative was targeting for future versions of Drupal 8. That blog post is one year old today. Since that time we released both Drupal 8.3 and Drupal 8.4, and Drupal 8.5 development is in full swing. In other words, it’s time for an update on this initiative’s progress and next steps. 8.4: a Media API in core Drupal 8.4 introduced a new Media API to core. For site builders, this means that Drupal 8.4 ships with the new Media module (albeit still hidden from the UI, pending necessary user experience improvements), which is an adaptation of the contributed Media Entity module. The new Media module provides a “base media entity”.…

Read More →

Applications Developer – California Institute of Technology – Pasadena, CA

Drupal), visualization tools, GIS. The Applications Developer is a member of a 4-person developers group within the Digital Library Development (DLD) team, the…From California Institute of Technology – Thu, 09 Nov 2017 23:53:39 GMT – View all Pasadena, CA jobs Source:

The value of human, exploratory testing

Ann and Michael find things programmers never would have.Since unit testing and test-driven development burst onto the programming scene in the early 2000s, too many programmers have deluded themselves into thinking that they could ship high-quality software with automated testing alone. It’s a mirage.Don’t get me wrong. The industry took a big leap forward when the tooling and conventions for automated testing got put in the spotlight. But in many corners, it also threw the baby out with the bathwater. Automated testing does not replace “testing by hand”, it augments it.Testing by hand, or exploratory testing, is a crucial technique for ferreting out issues off the happy path. It is best carried out by dedicated testers who did not work on the implementation. Those pesky auditors who have the nerve to try using the application in all the ways a real user might.None of this is news, of course. I remember reading a statistic…

Read More →

Team Tendencies

Know thyself… as Socrates once famously said, is one of the more important tasks and exercises that we can undergo as people (and professionals). In fact, Socrates said that we make ourselves appear ridiculous when we try to understand things before we know ourselves first and that understanding our own natures and behaviors has a greater result and yield if we spent time investing in it. True, true. In many ways my blog here is a consistent exercise of that principle as I write for myself first and foremost as an exercise of discipline and of self-revelation. After that, though, I try my hardest to understand other people, especially those that I live and work with. Primarily, my spouse and my (growing) group of kids that I love tremendously. Following closely, the work that I do is deeply personal and very intimate. This is just the case in the startup world…

Read More →

CSS Code Smells

Every week(ish) we publish the newsletter which contains the best links, tips, and tricks about web design and development. At the end, we typically write about something we’ve learned in the week. That might not be directly related to CSS or front-end development at all, but they’re a lot of fun to share. Here’s an example of one those segments from the newsletter where I ramble on about code quality and dive into what I think should be considered a code smell when it comes to the CSS language. A lot of developers complain about CSS. The cascade! The weird property names! Vertical alignment! There are many strange things about the language, especially if you’re more familiar with a programming language like JavaScript or Ruby. However, I think the real problem with the CSS language is that it’s simple but not easy. What I mean by that is that it…

Read More →


(This is a sponsored post.)Let’s say you’re trying to report a bug and you want to do the best possible job you can. Maybe it’s even your job! Say, you’re logging the bug for your own development team to fix. You want to provide as much detail and context as you can, without being overwhelming. You know what works pretty well? Short videos. Even better, video plus details about the context, like the current browser, platform, and version. But if you really wanna knock it out of the park, how about those things plus replayable network traffic and JavaScript logs? That’s exactly what BugReplay does. BugReplay has a browser extension you install, and you just click the button to record a session with everything I mentioned: video, context, and logs. When you’re done, you have a URL with all that information easily watchable. Here’s a demo. A developer looking at…

Read More →

Optional Config Weirdness in Drupal 8

This is a fairly advanced topic. If you are new to Drupal 8 development, you probably don’t need to worry about this stuff. Ah, the config system. Crown jewel of Drupal 8, amirite? Well, yeah, it’s fantastic and flexible (as is most of Drupal). But if you have advanced use cases — such as building a system that alters config dynamically — there are traps you should know about. Config is normally a fairly static thing. Your module/theme/profile (“extension” from here on out) has some configuration in its config/install sub-directory, and when the extension is installed, that config is imported. Once it’s imported, that config is owned by your site and you can change it in any way you see fit. That’s the simplest, and most common, use case in a nutshell. Let’s talk about some other ones. Optional config In some extensions’ config directory, you will see an optional directory alongside install. If…

Read More →

Drupal Developer – A Development Firm – Ann Arbor, MI

We are looking for Drupal developers. Experience with Drupal 8 in addition to 7 is a huge plus. Ideally, you’ll have two or more years experience working with…From Indeed – Wed, 08 Nov 2017 19:12:24 GMT – View all Ann Arbor, MI jobs Source:

Drupal Development Lead position is open @VIATEQCorp

Rockville, MD, United States Source:

ARIA is Spackle, Not Rebar

Much like their physical counterparts, the materials we use to build websites have purpose. To use them without understanding their strengths and limitations is irresponsible. Nobody wants to live in an poorly-built house. So why are poorly-built websites acceptable? In this post, I’m going to address WAI-ARIA, and how misusing it can do more harm than good. Materials as technology In construction, spackle is used to fix minor defects on interiors. It is a thick paste that dries into a solid surface that can be sanded smooth and painted over. Most renters become acquainted with it when attempting to get their damage deposit back. Rebar is a lattice of steel rods used to reinforce concrete. Every modern building uses it—chances are good you’ll see it walking past any decent-sized construction site. Technology as materials HTML is the rebar-reinforced concrete of the web. To stretch the metaphor, CSS is the interior…

Read More →

Learn to build a Drupal 8 website in our hands-on class (Dec 1, 2017)

Start:  2017-12-01 13:00 – 16:30 America/Los_Angeles Organizers:  douglaschoffman rich.yumul Event type:  Training (free or commercial) INTRO TO DRUPAL 8 The Drupal open-source content management system (CMS) powers more than one million websites and more than twelve percent of the top 100,000 according to BuiltWith. Join us for an introduction to Drupal 8 websites. Hosted by Sagetree, a forward thinking digital agency, crafting compelling brands, using technology and creativity to help you grow. DETAILS: When: Friday December 1st, 2017 from 1:00pm – 4:00pmWhere: Regus @ Gateway Chula Vista, 333 H Street, Suite 5000, Chula Vista, California, 91910What to bring: Wi-Fi enabled laptop with a web browser to participate in the hands on labs This workshop will examine Drupal website architecture, design, site building, theming, module development and data visualization. DRUPAL CONCEPTS Users, roles and permissionsMenu systemContent typesTaxonomiesViews AGENDA 1:00pm – Introductions 1:15pm – Install Drupal 81:30pm – Build basic Drupal 8 site2:00pm – Define taxonomies2:30pm – Define content types3:00pm…

Read More →

Apple’s Proposal for HTML Template Instantiation

I’m sure I don’t have the expertise to understand the finer nuances of this, but I like the spirit: The HTML5 specification defines the template element but doesn’t provide a native mechanism to instantiate it with some parts of it substituted, conditionally included, or repeated based on JavaScript values — as popular JavaScript frameworks such as Ember.js and Angular allow. As a consequence, there are many incompatible template syntaxes and semantics to do substitution and conditionals within templates — making it hard for web developers to combine otherwise reusable components when they use different templating libraries. Whilst previously we all decided to focus on shadow DOM and the custom-elements API first, we think the time is right — now that shadow DOM and custom-elements API have been shipping in Safari and Chrome and are in development in Firefox — to propose and standardize an API to instantiate HTML templates. Let…

Read More →

You Just Changed My Workflow

Good products challenge people to rethink their existing workflows and consider changing them so that they might adopt the new tool. This requires time and patience, trial and error, and can even create a lot of anxiety. The difference between a good product and a great one is that a great one simply changes the user’s workflow magically. And, it really does feel like magic when it works well. Instead of anxiety it can create excitement. Instead of the user feeling as if their investing time that they can’t afford to invest they, instead, feel that their time is well-spent. This is the aim of any good product designer and developer. Our goal is to fundamentally transform your existing workflow(s) for the better. And, if we do our job well, then, we can be handsomely rewarded for it. CryptoYum Development — Nov, 2017 I’m working on two current mobile (iOS) applications right now…

Read More →

A Reasonable Approach for Getting Comfortable With Command Line

Considering how much the command line is an integral part of the developer’s workflow, it should not be thought overly difficult or tedious to learn. At one time I avoided it myself, but one day began teaching myself ways to make the difficult as easy as it should be. I got over the hurdle, and you can too. It was worth investing my time to increase my command line comfort-level, and I am going to share a few tips and resources that I found helpful in this post. The intended reader is the type who typically avoids the command line, or perhaps uses it occasionally but not as a regular or essential tool. Tip #1: Maintain a Pragmatic Mindset The way to get more comfortable with the command line is this: practice. You practice, and you get better. There is no secret trick to this; study and repetition of skills…

Read More →

Back to Top