It’s the end of Day 3 of Dreamforce 2017, and I feel like I barely covered half of what I set out to accomplish with this event! Of course, it didn’t help that I fell ill on Day 2 and had to stay in bed the whole day. But seriously, this event is huge, and it seems to get even bigger every year.

Dreamforce Salesforce Trailhead

This year, the event spanned over 16 locations, including the entire Moscone Center, which in itself contain over 700,000 square of exhibit space, up to 106 meeting rooms, and nearly 123,000 square feet of prefunction lobbies. And this is not even including the ad-hoc locations for the multitude of evening events scattered throughout downtown San Francisco as well as spin-off events hosted by sponsors and partners.

There are more than 3200 sessions spanning from topics for the technical support team, sales team, partners, kids coding sessions, talks on current issues such as equality and women in tech, and even hour-long zen mindfulness sessions for those who wish to escape the stress of Dreamforce!

Dreamforce from developer’s PoV

I covered mostly sessions for developers. There are many exciting features for developers in place, the key takeaway for me being the Salesforce Developer Experience, or Salesforce DX.

Dreamforce Salesforce Trailhead

Currently, the tools for developers include development with the IDE (or other Open Source tools such as Maven/Sublime, etc), debugging with the Salesforce Developer Console, and deployment with changesets or with the Metadata API via ant scripts. Salesforce DX expands that with a command-line interface (CLI) that allows developers to use any IDE or text editor, scratch orgs that can be created and deleted quickly and as many times as needed, and an updated Eclipse plugin for DX accelerated app development.

This is a huge improvement to the developer experience, especially when it comes to testing and deployment. The introduction of scratch orgs will expedite testing as developers can use these throwaway orgs to create and test code changes or maybe even features, rather than having to worry about “ruining a stable build”.

Also, Salesforce DX contains features for better logging of changes, so developers do not have to jot down every change made to every element in Notepad. The Stub API will help with more efficient unit testing, and the Metadata API with Salesforce CLI will hopefully make tedious checking of hundreds of changeset checkboxes a thing of the past!

Heroku development

Another topic that I covered was Heroku development. New features for Heroku include the Heroku CI for running tests, and Heroku Shield for apps that requires regulatory and compliance complexities. This is mainly targeted at the medical and healthcare professionals where compliance is a huge part of their application systems and data sets.

There’s also an update to Heroku Connect to enable bulk processing which speeds up processing up to 5x in performance. This will allow developers to offset much of their bulk processing to Heroku to avoid the dreaded “Apex CPU limits exceeded” errors.

Other interesting stuff

On top of that, other cool new or updated developer tools include:

Further details on all of the above features can be found on or

Dreamforce keeps getting better

This is my third Dreamforce attendance, and my last attendance was back in 2011. Overall, I think there is a huge improvement from the last time I attended. Firstly, there is much less sales pitching in the breakout sessions hosted by third parties. In the past, the breakout sessions that were not hosted directly by Salesforce employees were not really worth attending unless you wanted to sit through 30 minutes of a canned demo of a product that may or may not exist, and listening to a sales pitch of how great some product is. This year, all of the sessions I attended provided live demos and concrete steps to reproduce the tech that was being presented. Secondly, there is also a noticeable difference in diversity of the presenters, as there were equally as many men, women, and minorities doing the presentations.

Lastly, Dreamforce has completely done away with the Hackathon event (I think, since 2014?). If you are not familiar with the Dreamforce Hackathon, it is an event within Dreamforce where developers would learn a new tech skill and write an app on the spot. The best three apps would then win prizes such as laptops or even a million dollars. However, the event was often hijacked by developers with pre-written apps who uses the time to promote their product instead. This defeats the nature of the learning experience and discouraged amateurs from participating in the Hackathon.

In place of the Hackathon is now the “MiniHacks”, where everyone is given an equal opportunity to complete 10 technical challenges of varying difficulty, and those willing to learn a new skill has an equal opportunity to earn awesome swag!

Salesforce continues to innovate with new solutions to ease working on their platform, and Dreamforce 17 successfully exemplifies this. I am thrilled to be a part of this experience, and I look forward to seeing more new ideas from Salesforce.

Viime viikolla sosiaalisessa mediassa puhuttiin siitä, että Forrester nimesi Salesforcen johtajaksi low-code-sovelluskehitysalustoissa. Mitä low-code-sovelluskehitys tarkoittaa ja miksi siitä kannattaa olla kiinnostunut?

Forrester on nimennyt Salesforcen alustan johtajaksi Forrester Wave -raportissa Low-Code Development Platforms For AD&D Pros, Q4 2017. Salesforcen omassa Top Trends In Low-Code Development -raportissa 81 % vastanneista IT-puolen johtajista näki low-code-kehityksen kiinnostavan omaa organisaatiotansa kahden vuoden päästä paljon tai erittäin paljon.

”81 % vastanneista IT-johtajista näki low-code-kehityksen kiinnostavan omaa organisaatiotansa kahden vuoden päästä paljon tai erittäin paljon.”

Tästä low-code-sovelluskehityksessä on kyse.

Klikkauksia, ei koodia

Low-code-kehityksessä on kyse siitä, että sovelluksia kehitetään aikaisempaa pienemmällä määrällä koodaamista, joskus jopa kokonaan konfiguroimalla. Kun koodaamisessa nimensä mukaisesti tuotetaan koodia, konfiguroinnissa on kyse asetusten muokkaamisesta visuaalisen käyttöliittymän kautta. Tämä vaatii taustalle esimerkiksi Salesforcen kaltaisen alustan.

Salesforce low code -kuvakaappaus konfiguraattorista

Kuvassa Salesforcen Lightning-sivun konfigurointinäkymä, jonka kautta asetuksia on mahdollista muuttaa selaimen kautta, ilman koodaamista. avulla Salesforcea voi laajentaa valmiiden Salesforcen ratkaisujen (Marketing automation, CRM, Customer Support, jne.) lisäksi mihin tahansa yrityksen prosessiin. Low-code-kehitysmallissa Salesforcea käyttävä yritys voi keskittyä liiketoiminnan kehittämiseen ja liiketoimintaa tukevien ratkaisun tuottaminen alustalle on nopeaa.

Esimerkiksi Sales Cloud -vakioratkaisu ei suoraan täysin tue kaikkien yritysten myyntiprosessia. Olemme toteuttaneet muun muassa kiinteistöliiketoiminnan asiakkaalle ratkaisun, jossa yrityksen vuokrattavat tilat tuodaan osaksi myyntiprosessia. Näin myyntiorganisaatiolla on reaaliaikainen tieto vapaista tiloista tai kohteen vuokraus-asteesta.

Salesforce-alustan kehitysvälineet tietomallin, käyttöliittymien, automatisaatioiden ja analytiikan osalta mahdollistavat nopean kehityksen idean tasolta toimivaksi prototyypiksi jopa muutamassa päivässä.

Low-code-sovelluskehityksen hyödyt

Kun ratkaisusta 80-100 % hoidetaan konfiguroimalla koodaamisen sijaan, saadaan ratkaisu Salesforcen mukaan valmiiksi jopa 70 % nopeammin ja 50 % edullisemmin. Sovellus on heti valmis mobiilikäyttöön, eikä erillistä mobiilikehitystä tarvita. Lisäksi valmiin sovelluksen ylläpito on aikaisempaa helpompaa.

Salesforcen tuo kehitykseen vielä yhden merkittävän edun: jos organisaatiossa on Salesforcen tuotteita jo käytössä, ei erillisiä integraatioita tarvitse rakentaa, vaan kaikki aikaisempi data on uuden sovelluksen käytössä ja kaikki sovelluksen tuottama data suoraan käytettävissä muissa Salesforcen palveluissa. Samalla voidaan hyödyntää kolmansien osapuolten kehittämiä AppExchange-sovelluksia osana kehitettävää ratkaisua.

Low-code-kehityksessä on siis yksinkertaisesti kyse siitä, että valmiin alustan ansiosta ratkaisuja voidaan tuottaa koodaamisen sijaan konfiguroimalla. Tämä nopeuttaa kehitystä, pienentää kuluja ja mahdollistaa sovellusten helpomman ylläpidon.

Aiheeseen liittyvät linkit: