\\\ Home \\\ Blog \\\ Profile \\\ ☕




All categories

Software Experiences by Robert Nickel

Behavior-Driven Development

TDD to BDD - Principles and Tools with an Impact on Business Value and Communications

Robert Nickel - December 05, 2020  🏷️  Agile | Projects

For the module “Agile Procedure Models” at my university, I write an essay about BDDs origin, principles, advantages, evaluation and how to approach it. Since we need to hand in a PDF version and a markdown version, I decided to go the extra mile and have a always up-to-date version of it hosted as Github Pages website here: bdd.guru,
so that I can receive early feedback from other readers and the professor. Please send me a mail (robert.nickel@aikq.de) if you have any feedback for me.

Update: The paper is done.. I think it is worth reading. Feedback is still valuable to me.

I then realised, that it is generic enough to use it for all future essays and thesis’, so I extracted a template repository which makes it really easy to get started with a new paper, export it as HTML and host it as Github Pages website with every commit and additionally export it as PDF using pandoc and the latex pdf engine with minimal effort. Find it on Github to experience the same ease.



Software Experiences by Robert Nickel

Recursion

Building this page

Robert Nickel - October 08, 2020  🏷️  Projects

I’m building this page myself, this is not a wordpress template. I consider my self a minimalist, this regards belongings, wording and coding. Why do I need thousands of lines of php and javascript and a template, if all I would do with it is display some really simple text and images?

This text is a simple html paragraph in a div, styled with 3 lines of css. Its simple to maintain and read, and it loads and renders very fast. It is a good example for the difference between simple and easy. It might would’ve been easier to setup wordpress (or similar) and just use a template. But that wouldn’t be simplest possible solution, I would have to update wordpress on a regular basis, deal with licensing, support php etc. It is so much unneccesary complexity. This way I had to put some effort into it, but I could avoid complexity and gain simplicity, even though its (maybe) not the easiest way.

You can find the source code here. If you find typos, feel free to send a pull request. 😄



Software Experiences by Robert Nickel

A Telegram Bot

I built a Telegram Bot for pupils/students schedule (MyScheduleRobot)

Robert Nickel - September 09, 2020  🏷️  Projects

My younger brother tried to build a telegram bot, that gives him some information about his schedule, so he started, but stuck due to some infrastructure problems. I attempted to help him, and then basically took over the whole thing. I used claudia.js with its deployment and bot-builder features, and deployed it to AWS Lambda. Document based persistance happens using DynamoDB. You can test the bot here (imagine you are still at school): t.me/MyScheduleRobot Now some functional details: This bot is a schedule bot, it is not a calendar. To make the difference, and therefore what it does and what it doesn't, more clear:


Schedule Calendar
Days repeat every week Days are different every week
Timeslots repeat every day (🔔 rings) Timeslots are vary a lot
Compare this with this

A short high-level summary is:

  1. Define all the subjects (plus room, teacher etc.) you have, the timeslots (that repeat every day) and your timezone
  2. Configure your schedule, that is e.g. which subject you have first on monday, which second etc.
  3. You get information for the whole week, just today, tomorrow or even now by chatting with the bot

Use /help to get the detailed and always up-to-date list of things the bot can do.

Lessons learned:

You can find the source code here.