Active developers vs. awareness events, an approach we are trying

If you in Developer Relations space then hosting and speaking at events is probably a big part of your job.

There are of many type of events that developers go to: meetups, workshops, conferences, online meetups/webinars, Lunch & Learn events, panels and others.

Metrics is the holy grail in Developer Relations. One type of a metric that many companies track is the number of active developers on their platform. Similar metrics can be number of apps created, number services created, etc.

One metric for us is a number of active developers on the IBM Cloud platform. As you can image, that’s a metric for the larger Developer Advocacy organization at IBM and also company-wide. So we got a lot of help.

What is an active developer? Every company can define it differently but usually it’s a developer who registered for a cloud account and created a service (there is also a time window when the developer has to be active).

Continue reading “Active developers vs. awareness events, an approach we are trying”

Why you should consider hosting Lunch & Learn events as part of your Developer Relations program

In the context of Developer Relations, a Lunch & Learn event is a lunchtime developer education event. It’s very similar to an evening meetup but hosted during the lunch hour. While a meetup can have different formats (hands-on, lecture, panel, etc), this particular event has a lecture-style format. Developers come to the event, get to eat a delicious lunch, learn something new, ask questions and network.

So now the question is – why run an event during the lunch hour. I’m going to share why a Lunch & Learn can add value to your developer relations program. I want to mention this is not to run instead of evening events but in addition to evening events.

Many developers don’t live in San Francisco. They come to San Francisco for work but don’t want to stay in San Francisco after work to attend a developer event. Many want to get home to their families, significant others, friends or just to relax. So we thought why not host an event when developers are here during the day. People have to eat lunch anyways – right? So why not combine developer education and delicious food. And that’s how we started hosing Lunch & Learn events.

Continue reading “Why you should consider hosting Lunch & Learn events as part of your Developer Relations program”

So, how does your solution compare to…

Competition

If you have been doing Developer Advocacy for some time, it’s very likely you heard this question:

So, how does your solution compare to <insert_competitor_solution>

This is probably not a question of if (if someone will ask but) but a question of when. This question can be asked at a conference, meetup, workshop, an online forum or even just via email.

There is no right or wrong answer here – as usually in developer advocacy. I want to share some guidelines I shared with my team on how to respond to this question.

Unless you have a deep knowledge of the competitor’s solution and can offer a constructive comparison, don’t offer a comparison. With so many different frameworks, libraries, tools, clouds – it’s not easy to have a strong understanding of how competitor’s products work.

Never bash the completion. It doesn’t make you look good and most likely damages your credibility, reputation and your company’s. It also damages any goodwill you had with the community. It shows weakness.

Continue reading “So, how does your solution compare to…”

Why Developer Advocacy programs should consider working with partners

One of the goals of many developer advocacy programs is to reach more new developers. One approach that I leveraged when I was at Appery.io and we leverage even more at IBM Developer is working with partners.  In this blog post I want to share a few reasons why working partners has benefits.

We work with organizations such as Women Who Code, Hacker Dojo, The Den and others. These organizations have their own vibrant developer communities. We also work with developer companies such as Twilio, Slack, Cloudinary, Dashbot, JFrog and others. These companies have their own vibrant developer communities.

There are a number of factors why we like working with partners.

First, and probably the most important – working with partners and external communities allows us to provide developer education to developers who we probably wouldn’t reach otherwise. At the same time, the partner is able to tap in our growing developer community. This has a lot of value to both organizations. A one-off event is probably fine but we like to build a relationship with these organizations. We ty to be consistent and host a monthly event. If one event a month is too often, you can try to do once every two month. Event frequency is really up to you.

Continue reading “Why Developer Advocacy programs should consider working with partners”

How content creates content

A big part of many developer advocacy programs is content. Content can be in the form of tutorials, blog posts, videos and hands-on workshops and other forms. Coming up with content ideas is not always easy. In this blog post I’m going to share some ideas how to simplify content creation.

The IBM Developer SF team hosts weekly events. We host at least one in-person event and one online event (webinar/online meetup). For every in-person workshop we host an online event. It’s usually best to host the online event after the in-person event as people who couldn’t make the in-person event can watch the online version (but the other way is also fine).  The in-person event is about two hours and the online event is usually 40 minutes.  So yes, the content covered will be different but the basis will be the same. This is the first example where doing a hands-on workshop easily creates content for an online event.  The in-person event doesn’t necessarily need to be a meetup/workshop type event. It can also be a conference talk, a panel or a Q&A. It can really be anything.

We we host our online events on Crowdcast, the event is automatically recorded and the recording is available a few minutes after the event is over. The video can be downloaded and uploaded to your YouTube channel. Right there you have another piece of content. You can also take the video and create a blog post with it. Embed the video in the blog post with a short description of what you covered. That’s another content idea.

Here is an example of how you can start:

content-creates-content-1

This is nice considering this all from a single content piece.

Continue reading “How content creates content”

DevRel Q&A with Matthew Revell from Hoopy

I did a Q&A with Matthew Revell from Hoopy on Developer Advocacy.

Matthew: Tell me about your role at IBM.

Max: I joined IBM about a year and a half ago and work in the Developer Advocacy organization. I lead a wonderful team of Developer Advocates and we cover the North America West region. The majority of our time we spend in the San Francisco Bay Area. The team provides developer education and covers technologies such as Watson AI, Containers, Serverless, Blockchain, Node.js and Machine Learning.

We run weekly in-person and online developer education events in the San Francisco Bay Area. We love to partner with other companies and organizations such as Women Who Code, Hacker Dojo, and others to host joint events. This works extremely well for us. We also attend and speak at local conferences and publish content such as tutorial, how-to’s, and videos.

Matthew: What brought you to this point in your career?

Read the rest of the Q&A.

My short time with T-Mobile: the good, the bad and the ugly

After 15+ years with AT&T Mobile I decided to switch to T-Mobile. The reasons I switched to T-Mobile are in the Good section. The reasons are went back to AT& are in the Bad/Ugly sections. I was with T-Mobile for five days and used the phone in the Bay Area (east bay and San Francisco).

The Good

  • Excellent customer service. Any time I reached out to them on Twitter via DM, I’d get a reply within 10-15 minutes. They genuinely want to help you 👏
  • Price. T-Mobile monthly price per line is usually $10-$15 cheaper than AT&T or Verizon. For example, right now they have a promotion where you pay $40/line. For three lines it is $120 and the nice thing is that all taxes and fees are included. In California, you get close to $5/line in taxes and fees. They also include Standard Netflix subscription (with 2 or more lines), that’s another $10.99 🤑
  • I like their Un-Carrier principles 🙌
  • It’s also fun to watch their CEO John Legere tweet and make fun of the competition 🤪
  • Extra benefits such as texting and data abroad (although at very slow speed), free in-flight texting on Go-go enabled flights (and one hour free internet) ✈️
  • If coverage where you live is not good, T-Mobile will send you a free CellSpot or signal extender for free. CellSpot connects to your WiFi and creates a mini cell tower right in your house 📶

The Bad

  • Coverage is weak. In places where their coverage map shows strong coverage, you get weak coverage. My service was showing 1-2 bars most of the time 👎
  • T-Mobile support will offer you a free CellSpot or signal extender if coverage where you live is not good. I think they know their coverage is not good so they right away offer these units for free 📡
  • Call quality (voice) is not as good (at least compared to AT&T).☎︎
  • Many other people are also reporting that they have bad service/coverage 📴
  • Anytime you tweet about bad coverage (like here), T-Mobile support will respond (that’s good) and tell you they will help. After a few tweets like that you realize there is nothing they can do (they can’t magically add more towers) 🙅‍♂️
  • T-Mobile CEO John Legere making of the competition is fun at the first. When you realize the service is far behind the competition, these tweets are not as fun anymore 😶

The Ugly

  • Coverage inside buildings is very bad and in some cases non-existent.  I was in the heart of San Francisco with virtually no coverage inside an office building even thought their coverage map said it was in strong coverage area 😡

The Disappointment

I was eager to try T-Mobile due to everything I listed in the Good section. I was genuinely surprised and disappointment at how poor quality their service/coverage is in 2019. I always knew that T-Mobile was behind AT&T and Verizon in coverage but I didn’t realize how far behind, even today. I complete understand that each carrier has some areas where coverage is not good but I was expecting much stronger service/coverage in the San Francisco Bay Area and coverage inside buildings is even worse 😔

I think T-Mobile knows its network is not as good and so has to be different than AT&T/Verizon on something else – and that something is lower prices (and that does attract new customers).

I like T-Mobile and what they stand for. T-Mobile is in the process of merging with Spring. I hope after the merger is finalized, they will significantly improve their coverage and I will give them another try 🙏

Should you migrate an existing enterprise Java application to serverless architecture?

Last week Marek Sadowski and I presented Introduction to Serverless with IBM Cloud Functions: a new way to build modern apps at Silicon Valley JUG. 

One of the questions from the audience was how do you take an existing large enterprise Java application and migrate it to serverless architecture? 

The short answer is you probably shouldn’t do it.  

But let’s look at the long answer. 

Unless there is a very good reason, there is little value in taking a large existing enterprise Java application and migrating it to serverless architecture. I think serverless should be considered for new applications in most cases.  Now, if you need to add a small new feature to an existing application, you could look at serverless.

For example, if you are running a large loyalty application (airlines, hotels, etc) and you have a new requirement where you need to process new members once a day. Once a file is received/uploaded, a function can be executed to process the new members.  

Or, you can migrate small bits from an existing application like a cron job or a queue process. But again, there is probably little value in doing a complete re-write. 

Serverless cold start is not a problem – and here is why (for most applications)

When you start with serverless you will very soon learn/hear about functions cold start (I believe serverless = cloud functions + APIs). A cold start happens when a cloud function is invoked for the first time or after a long time of no invocations. Basically, it takes the server (yes – there are servers!) a little bit longer to get the function ready the first time, so it’s ready to accept and process the request. If a function is invoked a second time, it will execute faster. There is a time period during which a function stays warm. If a function is invoked again during that time period – it will be executed fast.

If a function is not invoked within some period, it becomes cold again and the next time it’s invoked, it will be a little bit slower again (cold start).

This makes sense. When you launch an app on your phone or computer for the first time – it takes a little bit longer the first time. When you launch it again very soon, it usually starts faster.

For many applications cold starts are not a problem. It’s very important we consider the type of application we are building. If we are building a business application or an internal backend application – then cold starts are not a problem. It’s not going to make a difference if an application starts a fraction of a second slower or responds to a request a fraction of a second slower. Type of an application is important when talking about cold starts. It’s only a problem for some applications and probably in those cases serverless is not the best fit.

Continue reading “Serverless cold start is not a problem – and here is why (for most applications)”

Video: Serverless – a new way to build modern applications

Curious about serverless/function-as-a-service/cloud functions technologies, but haven’t had a chance to dig in? Wondering what all the excitement is about? Serverless doesn’t mean no servers. It’s a new way to build modern applications. Watch this video to learn more about this new approach to building modern applications. The video covers:

  • The current state of the serverless ecosystem & major players
  • Recognized ideal use cases for serverless solutions
  • Best practices for serverless architecture
  • Good sources of information to keep abreast of new developments
  • Live coding example

If you want to learn more about this topic, please read this blog post: Serverless – simply an approach to building modern applications?