SoftwareGR Presents Dan Lindeman: A Talk About Kotlin

Tuesday, Sept. 19


Atomic Object, 1034 Wealthy St. SE, Grand Rapids

A Talk About Kotlin

What is with all the hubaloo around Kotlin? After Google IO this May, Kotlin went from the darling of a few, to the promised land of many. In this talk, Dan Lindeman will present an introduction to the Kotlin programming language, showing off some marquee features. Further we will discuss several stories that the language seeks to address. 

About Dan Lindeman

Dan is a Software Engineer from Grand Rapids, MI, where he lives with his wife Kayla and his dog Bowie. When not learning a new language, framework, or piece of tech, Dan enjoys playing Nintendo games and spending time with friends.

An educator-turned-developer, Dan got his start in the software industry testing embedded automotive infotainment systems. He is currently a part-time Masters student at Grand Valley State University focusing on Web Architectures. A self-described conference junkie, Dan can be found organizing community events and software meetups groups all over West Michigan.

SoftwareGR Presents Reid Draper: The Simple Side of Haskell

Tuesday, June 27


Atomic Object, 1034 Wealthy St. SE, Grand Rapids

Abstract: The Simple Side of Haskell

Haskell has a (well-deserved) reputation for having a large, complex type system. However, there is tremendous power in using only Haskell's most basic features. In this talk we'll see how you can use simple types to ensure a password is cryptographically hashed, that an email is valid, or that a refactor is complete. No prior knowledge of Haskell is assumed!

About Reid Draper

Reid Draper is a software leader with expertise in functional programming, distributed systems, and databases. Most recently, he was VP of Engineering at Helium, where he led a team of Haskell developers. Reid also worked on distributed databases at Basho, and music recommendations at The Echo Nest.

SoftwareGR Presents Alex Fisher: The web and "trustless"­ communications

Tuesday, April 25


Atomic Object, 1034 Wealthy St. SE, Grand Rapids

Introduction to Ethereum

Come learn about the future of the web and "trustless" communications.  This presentation will explain what a Blockchain is and focus in on a specific public blockchain called Ethereum.  Ethereum is a decentralized platform that runs smart contracts: applications that run exactly as programmed without any possibility of downtime, censorship, fraud or third party interference.  These apps run on a custom built  blockchain, an enormously powerful shared global infrastructure that can move value around and represent the ownership of property. This enables developers to create markets, store registries of debts or promises, move funds in accordance with instructions given long in the past (like a will or a futures contract) and many other things that have not been invented yet, all without a middle man or counterparty risk.

About Alex Fisher

Alex has had a dual interest in both engineering and business since he was a kid. He started his first business in high school, a computer repair company, that was featured on the front page of the Detroit Free Press.  His most recent business, one of Michigan's largest web design companies, was acquired by a Chicago marketing agency in 2016.  Today, he's head-down in blockchain technology which is disrupting the world of finance, banking, logistics and other areas of business through "trustless" computing.  He is helping to build the Ethereum community as an "Ethereum Evangelist" and founder of the Michigan Ethereum Meetup group.


SoftwareGR Presents Sam Bleckley: Ripples in the Pond: Redefining estimation to redefine your entire process


When we estimate time and budget needs for software, we largely use methods that are echoes of echoes of echoes -- they're part of an oral tradition, rather than designed and engineered solutions. The result: engineers don't like estimating, estimates can't be relied on for business decisions, and everyone suffers in the cargo-cult of velocity.

Starting with human concerns and business needs, we'll investigate an evidence-based approach to estimation. From that starting point, we'll take a stroll across the manifold of possible software development processes, and see how adjusting one small part of industry standard practice can lead to radical changes to the whole.

Finally, with estimation as a case-study, we'll ask what other moments in software development can act as nucleators for larger change.


Sam Bleckley is a Software Engineer with a background in fine art, and is passionate about both technical and human concerns. He has written software for wide-ranging needs, including machine learning research, computational biochemistry, and Bay area web startups. He currently works at Mutually Human. 






Software GR Presents Goran Rydqvist

Tuesday, February 28


Atomic Object, 1034 Wealthy St, SE, Grand Rapids, MI

The Art of Programming and the Future of Programming Languages

Why is programing often slow and expensive? Why do the results create a painful experience for end users? What factors define the bounds of what we are able to create through programming? Is it not overdue to design a truly great Programming Language -- one language to rule them all?


Göran Rydqvist is the co-founder and Vice President Research and Development of Configura, a Sweden-based company specialized in space planning and system configuration. 

With more than 40 years of computer programming experience, Göran’s achievments include developing the CM incremental programming language which is the foundation of Configura's CET Designer technology. Göran excels in Dynamic Syntax & Metaprogramming, Large System Programming and Parametric Manufacturing. He holds a Master of Science from Linköping Institute of Technology (LiTH) (1984-1987) and was a PhD Student in Hardware Synthesis at LiTH (1987-1889) including a year at Xerox Palo Alto Research Center in Palo Alto, California (1989) before co-founding Configura in 1990.

Software GR Presents Brian Tol: After the Cloud: Using Fog computing in IoT

January 24, 2017

6:00pm - 8:00pm

Atomic Object, 1034 Wealthy St. SE, Grand Rapids, MI


The Internet of Things represents one of the largest opportunities for the software industry since the rise of the web back in the 1990s. And like the early days of the web, IoT is a wild west of standards and best practices: security is fast and loose, interoperability is mostly a pipe dream, and user experiences are very basic… when they work at all. Despite these short comings, the technological and commercial factors driving IoT aren’t slowing down anytime soon. And they haven’t stopped early adopters from succeeding in the space. In our experience, one of the major factors impeding the maturity of IoT is the lack of common design patterns. Too many organizations, including IoT platforms, are reinventing the wheel, and doing a bad job of it. In this talk, Brian Tol presents a case study on how SpinDance inherited a poorly architected IoT product, and how they improved it using Fog computing. He then builds on this story to show how a solid knowledge of Computer Science’s past can guild us into the future. 


Brian Tol is a Sr. Software Engineer at SpinDance, a software firm focused on the Internet of Things. He’s a software guy passionate about the intersection of technology, business, and user experience. During his time in the industry, he’s worn many hats, including sale guy, project manager, marketer, and information architect, all while maintaining a foot in software development. Before coming to SpinDance, Brian was a CTO focused on web analytics and real­time advertising.

Brian is a graduate of Calvin College, where he eared his Bachelors in computer science. When not coding, Brian enjoys cooking, listening to old vinyl records, learning new board games, and spending time with his family.


SoftwareGR Presents Anatoly Polinsky: Clojure is powerful, simple and fun

Tuesday, November 22, 2016

6:00pm - 8:00pm

Atomic Object, 1041 Wealthy St., Grand Rapids, MI

Clojure is powerful, simple and fun. Depending on how the application state is managed, these 3 superpowers can either stay, go somewhat, or go completely. Apps we build for clients are quite different from tools and libraries on github; they are full of state. While there are frameworks that allow you to join the "application context party", this talk will take a very different approach to manage and reload Clojure and ClojureScript state with the help of a tiny library called "mount".
Anatoly loves people, music and coding. He went from "ZX Spectrum The Great" to IBM z/Series and then back to human oriented hardware. He works at Chariot Solutions where he has an opportunity to hack on Clojure, Scala, Java, Mobile and this thing people call big data. In his free time he drinks scotch, smokes hookah, jams some guitar chords with others, and then some. 

SofwareGR Presents Andy Van Solkema: Creativity, invention and innovation

October 25, 2016


Atomic Object, 1034 Wealthy St., Grand Rapids, MI

In this talk, I explore the evolution of creativity, invention and innovation. How at the heart of the movement to embrace design in organizations is not a silver bullet processes, role or set of method. Instead it is how we deal with the complexity of an incomplete picture by building understanding and clarity.

To deal with this state of unknown and complexity, I will share why business must embrace ambiguity as a tool by creating an environment for framing, sketching and invention, just as it did for optimization, efficacy and performance metrics. And how, in this new reality, the required tool to deal with this state of ambiguous decision-making is how we decide to work together

About Andy

Andy is Chief Designer at Open Systems Technologies. As Chief Designer he is responsible for the practice, vision and integration of design services while infusing human-centered design expertise with OST’s strong technology experience. Andy also is founder of Visualhero, a midwestern based experience design studio, where he practices on strategic projects as a Principal Designer. Visualhero, the official design studio of OST, offers a systems approach to creative problem solving by helping organizations take insights and ideas to action.

Andy combines a systems thinking approach with his craft of graphic, information and interface design. As technology, communication and business converge, he works 

under the belief collaboration, design methods and leadership, and the ability to articulate through making should be the hub of innovation. Although most days are spent in practice, he also enjoys speaking, advocating and educating others of design value, methods and process.

Software GR Presents Mark Vander Voord: Testing like a Mad Scientist

Tuesday, September 27

6:00 pm - 8:00 pm

Atomic Object,  1034 Wealthy St. SE, Grand Rapids, MI

Abstract: Testing like a Mad Scientist
Mad Scientists aren't known for having infinite resources nor time. They're not afraid to glue together mismatched parts; They know when they can use a bottle of hairspray and a lighter in place of a butane torch. We're going to talk about applying Mad Science ideals to embedded software testing. Mark is going to share what he's learned from other mad scientists, and he'd love to hear your tips and tricks!

Mark is a maker of things in ones and zeros. He spends his time helping others build embedded software. He’s written a self-published book on unit testing embedded C code, co-developed a series of online classes on the same topic, and is one of the primary maintainers of He’s one of the authors of the embedded software tools Unity, CMock, and Ceedling and possibly spends too much of his free time maintaining those tools. He’s friends with a variety of mad scientists, but sadly hasn’t had a secret lab since he was a kid.

Software GR Presents Scott Vokes: Write a Parser Today!

Tuesday, June 28, 2016

6:00 pm - 8:00 pm

Atomic Object, 941 Wealthy St, Grand Rapids, MI


From wire protocols to DSLs, applying structure to raw data is a core part of programming. The best tools for the job, parsers, have a  scary reputation -- developers often settle for others (such as  regular expressions) and suffer through their limitations instead. Parsers don't have to be intimidating, though -- they may be a huge branch of computer science, but a little knowledge goes a long way.

In  this talk, I'll focus on two parsing techniques that are widely applicable and independent of language or platform-specific libraries.

The first, recursive descent parsing, is a technique that belongs in  everyone's toolkit. It can be built up from only fundamental constructs,  yet is able to parse practical languages. It is particularly handy for creating DSLs and other tools where usability is important.

The second, a combination of Earley and intersection parsing, is a more  advanced algorithm. While comparatively obscure, it's worth knowing  because it can deftly handle data that would tie most common parsers in  knots. When a grammar is inherently ambiguous, it can even return all possible interpretations of the input at once, using a familiar and  space-efficient data structure in an unexpected way.

About Scott
Scott works on embedded and distributed systems at Helium. His other  interests include data compression, testing tools, cooking, and electronics.

Scott can often be found bicycling around Grand Rapids, MI.