R.M. Parsons Laboratory
Environmental Science and Engineering

MIT News: Environment

October 21, 2018

  • Wouldn’t it be nice if you could add any block you want to your paragraphs?

    In years past, layout for Drupal has been in the hands of front-end developers, but over time various modules were developed that provided site-builders the ability to adjust the layout. An improvement yes, but there still wasn’t a clear cut option that empowered content editors to alter the layout during the editorial process.

    Look out! Here comes the Paragraphs Module. This module has been taking the Drupal community over by storm because it allows content editors to add pre-designed components which gives each page the option to have different layouts. One of the limitations of the Paragraphs module, is that each paragraph can only be used once, and only for the current node you are editing. This means that you can’t re-use a common paragraph such as a call to action block, email signup or contact us form, so you end up finding yourself duplicating a lot of work if you want the same block on numerous pages. While the Drupal community has been working to help solve this problem by allowing the re-use of paragraphs, there are still going to be plenty of situations where you want to insert custom blocks, views, or system blocks such as the site logo or login block.

    How do you allow your site editors to add re-used blocks into their content during the editorial process?

    Let me introduce you to the Block Field Module. Maintained by the one and only Jacob Rockowitz (you know the webform guy ), you can be assured that the code follows best practices and that there will be support. The block field module allows you to reference any block regardless of where it is coming from and the best part, you don’t have to create some hidden region in your theme in order for the blocks to be rendered.

    There are plenty of awesome articles out there that explains how to use paragraphs so I won’t get into that. To follow along with my steps be sure to have downloaded and enabled both the Paragraphs and the Block Field modules.

    Steps to Add Blocks to Paragraphs

    1. Download and Enable the Paragraphs and Block Field modules.
    2. Create a paragraph type called Block Reference (or whatever name you want)
    3. Add a new field, by selecting the Block (plugin) field type from the dropdown and save it.
    4. Go to manage display and make the label hidden.
      I always forget this step and then I scratch my head when I see the Block Ref field label above my views title.
    5. Now go to back to your content type that has the paragraph reference field and ensure the Block Reference paragraph type is correctly enabled.
      The content type with the paragraph reference field was not covered in this tutorial.
    6. When adding or editing your content with a paragraph reference field. Add the Block Reference paragraph type. Select the name of the block that you would like to reference from the dropdown hit save on the content and watch the magic happen.

    In conclusion, it does feel a little scary giving content editors this much freedom so it will be imperative that all views and custom blocks have descriptive names so that editors can clearly identify what blocks to reference. Overall I feel like this is a good solution for referencing existing blocks that can save a lot of time and really unleashes the power of the paragraphs module. The Drupal community continues to amaze me!

    If you are interested in contributing 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 Add Blocks in Paragraphs for Drupal 8 was originally published in Drupal Atlanta on Medium, where people are continuing the conversation by highlighting and responding to this story.

October 19, 2018

  • Four MIT graduate students have been awarded 2018 United States Department of Energy (DoE) Computational Science Graduate Fellowships to address intractable challenges in science and engineering. Nationwide, MIT garnered the most fellowships out of this year’s 26 recipients.

    The fellows receive full tuition and additional financial support, access to a network of alumni, and valuable practicum experience working in a DoE national laboratory. By supporting students like Kaley Brauer, Sarah Greer, William Moses, and Paul Zhang, the DoE aims to help train the next generation of computational scientists and engineers, incite collaboration and progress, and advance the future of the field by bringing more visibility to computational science careers.

    Kaley Brauer is a graduate student in the Department of Physics. Her computational work in the Kavli Institute for Astrophysics and Space Research is uncovering new details about how galaxies form — including the origin of the Milky Way. Using high-performance computing simulations and theoretical models, she is identifying processes that underlie galaxy formation to learn more about properties of the early universe.

    “You need a detailed model to turn back the clock and learn about how a galaxy evolved step by step,” Brauer says. “In a supercomputer, you can see how things move and make adjustments so that you end up with a galaxy that looks like the galaxy we see today. It’s really fun.”

    Brauer says that while she originally wanted to be a scientific illustrator, an undergraduate cosmology class left her eager to learn more. Her current research allows her to combine her interest in both design and cosmology, and she hopes to focus her practicum on scientific visualization.

    “I'm very excited that Kaley was chosen as a fellow,” says Anna Frebel, an associate professor of physics and Brauer’s advisor. “It enables her to do the type of computational research she’s most excited about: to study galaxy formation and understand the evolution of our Milky Way Galaxy.”

    Sarah Greer is a graduate student in the Computational Science and Engineering (CSE)/Department of Mathematics PhD program. Greer’s undergraduate research in geoscience focused on seismic data processing and improving visualizations of the Earth’s subsurface. She intends to build on this work through her graduate research by using computational mathematics to address large-scale geophysical problems.

    Greer says she is grateful for the opportunities that the fellowship affords, including a plan of study that encourages her to take risks.

    “It has helped me go outside my comfort zone and find areas I’m interested in that I wouldn’t have explored otherwise,” Greer says. “I also really like that the practicum lab component gives us the chance to try something out and see if it’s the right career option.”

    Greer’s advisor, Laurent Demanet, an associate professor of applied mathematics, noted that modern geophysics has benefited from interdisciplinary researchers like Greer, who bring fresh perspectives to longstanding challenges.

    “Sarah’s impressive background is a rare blend of data/signal processing, computational mathematics, and Earth sciences,” Demanet says. “It was not a difficult decision to admit her in the new CSE-math PhD program at MIT, and we were all glad that the DoE felt the same way about awarding her this fellowship.”

    William “Billy” Moses is a graduate student in the Department of Electrical Engineering and Computer Science. Moses also completed undergraduate and master's degrees at MIT in computer science and physics. His current research in the Computer Science and Artificial Intelligence Laboratory (CSAIL) focuses on performance engineering — strategies to improve ease of use, speed, and efficiency in computing. In addition to developing programs that write code, he works on programs called compilers that allow code to run on different machines.

    “I really enjoy working on these problems,” Moses said. “Succeeding at them lets everyone take advantage of the latest advances in computer science without folks needing to spend five years in computer science graduate school.”

    Moses described how the financial assistance and connections through the fellowship would support his research and career.

    “I have the freedom to work on what I think is important, without necessarily searching for funding,” Moses says. “What really sets the DoE fellowship apart is the community it makes between the fellows and the national labs. Being a fellow in the program means that I have this wealth of resources out there for me.”

    “Billy is the kind of student who makes MIT a great place for research,” says Moses’ advisor, Charles Leiserson, a professor of computer science and engineering. Leiserson says that Moses, as an undergraduate, received a best paper award at the 2017 Symposium on Principles and Practice of Parallel Programming for modifying a highly complicated, 4-million-line compiler — “a feat that seasoned compiler engineers deemed well-nigh impossible,” Leiserson says. “I'm delighted that he has chosen graduate school at MIT to continue his research.”

    Paul Zhang is a graduate student in the Department of Electrical Engineering and Computer Science. Zhang conducts research in the geometric data processing group in CSAIL with his advisor, Justin Solomon, an assistant professor of electrical engineering and computer science.

    The geometric data processing group works on geometric problems in computer graphics, machine learning, and computer vision. Zhang is currently studying hexahedral meshing, a longstanding challenge that involves decomposing objects into cube-like elements for use in fluid simulation.

    Zhang noted that the DoE fellowship provides important benefits beyond financial support. “In addition to the funding, it gives me the opportunity to meet other experts in my field,” Zhang says. “It also gives me opportunities to use national lab resources like supercomputers.”

    Solomon says that in his time as a PhD student, Zhang “has already blown me away with his creativity and productivity — and he has achieved meaningful progress on some open research problems.”

    “He is an obvious choice for this fellowship who will succeed in graduate school and become a top leader in the computational science community,” Solomon says.

    Zhang and the 2018 cohort join the 10 other MIT students currently supported by the DoE Computational Science Graduate Fellowship Program. Administered by the Krell Institute and funded by the DoE’s Office of Science and the National Nuclear Security Administration, the fellowship program has supported more than 425 talented computational science students across the country since 1991.

  • Today, more than 80% of people’s interactions with government take place online. Whether it’s starting a business or filing for unemployment, too many of these experiences are slow, confusing, or frustrating. That’s why, one year ago, the Commonwealth of Massachusetts created Digital Services in the Executive Office of Technology and Security Services. Digital Services is at the forefront of the state’s digital transformation. Its mission is to leverage the best technology and information available to make people’s interactions with state government fast, easy, and wicked awesome. There’s a lot of work to do, but we’re making quick progress.

    In 2017, Digital Services launched the new Mass.gov. In 2018, the team rolled out the first-ever statewide web analytics platform to use data and verbatim user feedback to guide ongoing product development. Now our researchers and designers are hard at work creating a modern design system that can be reused across the state’s websites and conducting the end-to-end research projects to create user journey maps to improve service design.

    If you want to work in a fast-paced agile environment, with a good work life balance, solving hard problems, working with cutting-edge technology, and making a difference in people’s lives, you should join Massachusetts Digital Services.

    Check out some of our current postings here:

    Digital Strategist

    Digital Project Manager

    Web Analytics Business Analyst

    Didn’t see a good fit for you? Check out more about hiring at the Executive Office of Technology and Security Services and submit your resume in order to be informed on roles as they become available.

    Coming soon…

    Senior Drupal Developer

    Director of Technology

    Creative Director

    Senior UI/UX Designer


    Join our growing team at Massachusetts Digital Services was originally published in MA Digital Services on Medium, where people are continuing the conversation by highlighting and responding to this story.

  • Drupal as a part of Content as a Service Strategy Shankar Fri, 10/19/2018 - 21:09

    Digitisation has altered the game for content providers. Customers - whether businesses or consumers - look for bite-sized pieces of content delivered to their chosen interface anywhere and anytime. Content creators continuously need to rethink and rewire how they disseminate content across channels due to the proliferation of digital platforms, the variety, and granularity of media, and the ever-shorter attention spans of customers. And so arises the need for a Content as a Service (CaaS) solution.

    A hand holding a sticker resembling a fish with Be Content written on it and real fishes in the background

    The democratisation of content and the entry of social media and the technology giants into the content business are erasing the divide between media and entertainment market segments. This is building a new ecosystem that will be driven by content-as-a-service delivery models. Drupal can offer a magnificent CaaS solution for the organisations looking to distribute content on screens, websites, mobile apps, IoT devices and beyond.

    A Peek at CaaS

    An illustration showing the Content as a Service workflow with icons like mobile, desktop, house lock, shopping cart, watch and loudspeaker.Source: Bloomreach

    CaaS is an architectural pattern that completely decouples the content authoring process from how it is used. Traditional CMS offers a single software to separate the data layer from the presentation of said data. Even though the presentation of the data is separated, it is still attached to the technology, delivery channels, and the capabilities supported by the software. CaaS comprises of a backend CMS that provides content authoring capabilities with APIs for delivering content to external systems.

    CaaS is an architectural pattern that completely decouples the content authoring process from how it is used.

    An efficacious content-as-a-service model enables enterprises to store content in a form and with the sort of detail which makes it easier to discover, repurpose, transform, and transmit. Today, service providers can leverage their application programming interfaces (APIs) as platforms for disseminating content.

    Simultaneously, organisations must consider the level of granularity that is needed to store and expose units of content in the most effective manner. They should track the business costs generated by individual units of content so that their content supply can be refined and new business models can be developed. Even though technology constraints must be duly assessed, content providers should understand their content’s ‘lowest common monetisation denominator’ (LCMD) and the returns on content assets.

    Executing content as a service

    CaaS is a paradigm for delivering the right amount of content to the right kind of customer at the right time via the right channel. That is:

    • Content is enough to meet the demands of the customers
    • Content is personalised
    • Content is delivered accurately when the customer needs it. Updates are done in real-time.
    • Content is delivered on the platform of choice at the right time and then swiftly and endlessly transferred from one platform/ device to another.

    A perfect CaaS model is integrated with numerous services that connect to a customer-facing platform and expose units of content on demand. These can constitute music on Apple Music, books and magazines on Amazon Kindle, or shows on Netflix. The ubiquitous nature of the IoT is expected to make CaaS indispensable as all types of data are gathered by big data platforms and made available to application developers.

    APIs are the drivers for most “X-as-a-service” ecosystems and content-as-a-service is no exception to this
    A graphical representation showing the the growth in Web APIs with a blue-coloured regionSource: Bloomreach

    With the increase in platforms, formats, devices, languages and locations for exposing content, the ease, speed, and efficacy of governing and delivering it must also increase. APIs can transmit data to and from any destination faster and with cost-effective ways. In the API economy, APIs are developed like products for supporting new business models. An API strategy is a collaborative effort among product and technology teams to keep a digital business strategy on track. APIs are the drivers for most “X-as-a-service” ecosystems and content-as-a-service is no exception to this.

    The value of CaaS

    A linear flowchart showing the content value chain with icons resembling plus symbol and a person to describe the value of CaaSSource: Cognizant

    The ability to precisely identify the smallest unit of content that can be stored autonomously and delivered profitably is the foundation of any CaaS model. This can be referred to as the lowest common monetisable denominator (LCMD) of content which can be tracked, tagged and reused. Through taxonomy and semantics, enterprises can store content at the LCMD level and develop an aggregate or smaller levels of the data on demand.

    So once the organisation identifies the LCMD of content the evaluation can be done on the returns from pieces of content created at that granularity, that is, returns on a content asset (RoCA).

    When can you use CaaS?

    Following are the scenarios where you can utilise the capabilities of CaaS:

    • Mobile applications: Alterations to mobile applications, most often than not, needs the application to be resubmitted to a digital distribution platform vendor like Google or Apple for the approval. CaaS system enables businesses to alter the content in these applications without having to change the application.
    • Multiple channels: CaaS enables business users to deploy the same content to several delivery channels via a singular system rather than having to maintain different systems for different channels.
    • UX flexibility: Being independent of the presentation layer, designers can freely use any technology to develop their UX and are not tied to technologies or components supported by the CMS. Javascript frameworks, that evolve at their own pace, provides developers with greater UX flexibility.
    • AI-based application: Leveraging chatbots and other AI-based applications, it is easier for robots to consume content via an API.

    Drupal as Content as a Service

    Flowchart showing circles and boxes illustrating workflow of Drupal as Content as a ServiceSource: Dries Buytaert’s blog

    If you want to enable your frontend developers to create engrossing customer experiences, Drupal’s content-as-a-service approach allows you to think outside the page-based mentality. Drupal’s CaaS solution helps in delivering reusable, future-proof content seamlessly by decoupling the back and front ends where needed.

    Moreover, frontend developers can develop better experiences with Drupal’s presentation-neutral content and RESTful API and leverage tools like Angular, Ember, Backbone and many more. Ingestion of content from third-party content, for example, from aggregators and syndicators, to bring content into your Drupal environment can be done which can be disseminated to any channel. With Drupal’s CaaS capability, content is easily consumed by other websites and application that you choose.

    It has all been possible because of the amazing work that is going on in the Drupal Community’s API-first initiative. It is actively working to advance existing and new web services web services efforts thereby making Drupal an excellent CaaS and optimal for developers. Through web services like JSON API and GraphQL or the tooling that accelerates headless application development like the Waterwheel ecosystem, Drupal as a content-as-a-service is great for developers.

    Drupal is stupendous for both editors and developers

    Drupal is stupendous for both editors and developers. The biggest advantage that Drupal has over its headless competitors is that it can be an amazing CMS for content editors to give them control over the presentation of their content and a rich headless CMS for enabling developers in building huge content ecosystems in a single package.
    With Drupal perpetually powering more and more websites, it is also being extracted to its full potential in order to serve content to other backend systems, native applications, single page applications, and even conversational interfaces simultaneously.


    As digital transformation accelerates, content providers are altering the nuts and bolts of their content activities. As more content is delivered as a service through a myriad of APIs, more data will get generated thereby assisting content providers in creating more precise business models.
    Content as a service is like a treat for the developers giving them maximum flexibility in their pursuits of digital innovation. Drupal as a CaaS has been offering a great digital experience to both content editors and developers alike.
    Drupal experts at Opensense Labs have been powering digital transformation of businesses through Drupal development.
    Contact us at hello@opensenselabs.com to build great digital experiences using Drupal as Content as a Service.

    blog banner
    Gold typewriter on left and a sheet of paper on a pad with pen on right
    blog image
    Two hands typing on a typewriter
    Blog Type
    Is it a good read ?
  • Question: Decoupling Drupal… Wait, what? why? when?


    In a few words/points, decouple is good because:

    • Unleash of cutting edge frontend technologies
    • frontend technologies which are constantly accelerating and with which CMS’es can’t keep pace
    • Lots of front end work that does not necessarily need to change when upgrading the CMS
    • Which means also less friction between frontend and backend


    Question: What is all this hype about