View on GitHub

Devendra's Log

hello, world!

I am a software engineer by profession, a maker by heart, and have a lovely family at Recife, Brazil. You can find a résumé and some of my work at GitHub.

Navigate posts chronologically, by topic, or use Google Search.

2018

DevOps WISDOM

Improving query performance when using Entity Framework

Logging to Syslog using NLog

Active Directory domain server using Samba 4

Clone multiple GitLab projects the hard way

Authenticate credentials in C# using LDAP

Query DNS records using PowerShell

A WSDL with alternate schema for extensibility

Status of popular markup language standards

Using Python to analyze data in a PDF file

Git clients for iOS

Mocking SOAP services

Quickly create Markdown table in Visual Studio Code

Regression test a Wireshark dissector using tshark

Whither Skype

Welcome!

Windows-1252 charset codes

Useful Docker commands

Use eisvogel custom template with Pandoc

Create valid self-signed certificates using OpenSSL

Windows IoT Core application using Xamarin Forms

2017

ONC RPC version 2 over TCP/IP

Capture loopback communication on Windows

Word to Markdown using Pandoc

.NET Core class library solution from scratch

Highlighting problems in Lua dissectors

GRASP SOLID for effective object-oriented programming

Living the past from memory

SSL/TLS decryption in Wireshark

Export private key in pfx or p12 file to pem format

Randomly shuffle lines in a file

Octave CLI with AquaTerm on macOS

Use JavaFX in a Swing or console app

Run Node.js in a Docker container

Wireshark dissector in Lua for custom protocol over WebSockets

Self-signed code signing certificates

Retrieve OAuth 2.0 authorization code using JavaFX WebView

JSON syntax highlighting in ScintillaNET

Run Buildroot in a Docker Container

Analyzing iBeacon traffic using nRF BLE Sniffer

NXP NTAG I2C NFC Forum tag with Bus Pirate

I2C with Bus Pirate v4.0 on Windows 10

2016

Bluetooth serial client using Windows socket API

Bluetooth serial server using Windows socket API

View USB device descriptors on Windows

Inquire Bluetooth service record on Windows

Bluetooth SPP with Android

USB Serial firmware for ATmega32U4

OAUTH 2 with google-oauth-java-client

Arduino USB Serial firmware from scratch

Arduino USB DFU firmware from scratch

Unbricking a JTAGICE3

USB Descriptors of Arduino Uno

Arduino Uno bootloader programming using JTAGICE mkII

PCB Design Software

Hello World with .NET Core

git branch

Getting Started with the ESP-03

Run homebridge as a service upon reboot

Toggle GPIO on Raspberry Pi using HomeKit

Make things smart with HomeKit and Raspberry Pi

Create and use NuGet packages

HTTP/S capture using mitmproxy

Tackling OAuth 2.0 in iOS 9 with Swift 2

Handle custom CAs in iOS app

Dealing with .NET’s messy WebBrowser control

Tackling OAuth 2.0 in an Android app

Send content using PUT method

Specify a different ssh key for each host

2015

Join multi-user chat with node-xmpp-client

WeightLE

PhotoMath

History of file in Git repo

Simple message dispatcher using event delegates

Using hints inside text fields instead of labels

JSON-RPC

Manipulating JSON using Json.NET

Create XML documents in LINQ

WebSockets with WCF

A note on Hungarian notation

Generating a unique ID for a Windows PC

git stash

git tag

USB bulk data transfer

git archive

Color depth

The box lasts longer

Comparison of Logic Analyzers

Folders consuming most disk space using du

Virtual serial port redirection using socat

Physical serial port redirection

Enable Ubuntu Unity

Lumia 630

Listening to FM radio using RTL-SDR

Why Apple should do more

Moto E

Recursively copy to output in msbuild project

Comparison of Personal Finance Apps

Windows 10 Technical Preview

2014

USB Serial

USB CDC ACM driver for Windows

Common audio format between Android and iOS

Enable IP multicast routing in Linux kernel

Mono .NET runtime on Raspberry Pi with Buildroot

IP multicasting

Enable Debugging on Raspberry Pi with Buildroot

Wireless Router with Buildroot and Raspberry Pi

Getting Started with Bluetooth Low Energy by Kevin Townsend et al; O’Reilly Media

Bluetooth on Raspberry Pi with Buildroot

Python on Raspberry Pi with Buildroot

Customize Buildroot to build bluez-tools

Wireless on Raspberry Pi with Buildroot

Moto G 4G screen gone bad in less than a month of use

Embedded Linux system for BeagleBoard-xM with Yocto Project

Embedded Linux system for Raspberry Pi with Yocto Project

Network Connection Bridging on Raspberry Pi with Buildroot

Linux NAT routing on Raspberry Pi with Buildroot

Handling variable number of arguments in Lua

Upgrade to Ubuntu 14.04 on Parallels Desktop 9

Integer division and timer resolution

Node.js on Raspberry Pi with Buildroot

SparkFun FTDI Basic with Raspberry Pi

What woes Samsung?

Embedded Linux system for Raspberry Pi with Buildroot

Packaging source code using Grunt

Lists and sorting in .NET

Debug Logging in .NET

Smartphones on busses in Recife

Memory alignment problems in AVR32

Programming an Arduino using BlocklyDuino

Move a form without borders in C#

Getting started with Corona SDK

Lua dofile and globals

Learning Android by Marko Gargenta and Masumi Nakamura; O’Reilly Media

Why not to complain through social media

Gifting e-books

Common calls in a communications API

Getting GPS coordinates from a picture

Build FreeSWITCH from source on Ubuntu 12.04

Industrial Engineering

Dual SIM LG L40 (D175F) with Android KitKat

Get latest version of mono on Ubuntu

VoIP calls from the browser using WebRTC and FreeSWITCH

Migrating to a new version of AVR-GCC toolchain

Upgrading to a newer version of Atmel Software Framework

FreeRTOS task control block and stack in AVR32

Measuring data rate of ASF USB Device CDC example

async await

Scripting for the .NET CLR

Emulating Bluetooth LE Peripheral on Mac OS X Mavericks

Case for Raspberry Pi printed with MakerBot Replicator 2

Prototyping a PCB using LPKF ProtoMat S62

Virtual serial port redirection on Windows 8

Mac OS X tips

The Linux Programming Interface by Michael Kerrisk; O’Reilly Media

Driving an LED with a Raspberry Pi

2013

Silhouette Cameo

iOS 7 Programming Fundamentals by Matt Neuburg; O’Reilly Media

A Kindle for your eyes

Read ICMP packets in C# using raw sockets

iPad Mini with Retina display

OS X Mavericks

Is this how your circuits arrive?

Wireshark migrating to Qt

PyCharm 3.0 Community Edition

Visual Micro is an alternative IDE for Arduino

Fritzing to design and prototype electronics circuits

Working with multiple git remotes

Install python and pip on Mac OS X

Using ping to determine MTU size

Learning Python by Mark Lutz; O’Reilly Media

Python Cookbook by David Beazley, Brian K. Jones; O’Reilly Media

Graph Databases by Ian Robinson, Jim Webber, Emil Eifrem; O’Reilly Media

Getting started with Apache Cordova

Handling TCP keep-alive

MacBook Pro with Retina display

Cross-platform mobile app development frameworks

Android on BeagleBoard-xM

tar with different owner and group

Bluetooth Low Energy

VMware Fusion vs Parallels Desktop 8

RunOutputFileVerifyTask compile task in Atmel Studio 6.1

Calculate Intel HEX file checksum using Windows Calculator

Building usbboot

Tunnelblick OpenVPN client

Android Studio

The SIM card flaw and me

Serving static web content using WCF

Customize how objects are serialized to JSON in a WCF service

Thinking in shades of gray

Android 4.2.2 on PandaBoard using Linaro 13.06 binaries

Cleaner JSON from a WCF service with webHttp behavior

User-Centered Design by Travis Lowdermilk; O’Reilly Media

winusbnet patch to handle language id

Office 365 Home Premium a tremendous success?

Problem of Windows 8 is its positioning

WWDC 2013

Will threads become a relic?

Expensive test equipment with unverified circuit

RNDIS driver for Mac OS X

What I need in my next laptop

File virtualization in Windows

Install AOSP build to PandaBoard

IP fowarding

Free with subscription bought over the internet model

Dealing with segmented data in a Wireshark dissector written in Lua

Building Android Open Source Project for the PandaBoard

Incremental upgrade of an embedded relational database

Tips for Portuguese speakers writing English

Motorola Xoom with a physical Keyboard and Mouse

21st Century C by Ben Klemens; O’Reilly Media

Debug logging in C#

What orientation do you read in?

Table manipulation in Lua

SSH and SFTP on the iPad

Logging to Wireshark’s Lua console

Wireshark and Lua bitwise operations

Operator precedence

Apps should support multiple accounts

Apps that cache

Medium and information

DIV with scroll

PPI calculation

Survey of book reading apps for the iPad

Implement a color picker using ComboBox

What my iPad needs

Perception of innovation in Windows

Apple needs a larger phone

Some tips for drawing diagrams using custom controls

xcopy

Where to buy tech e-books

Reset selected option in a dynamically created select tag

Prepare HTML document for printing

jQuery html() does not retain form field values input by user

2012

Merge pdf files using ghostscript

Day ends

Access control

Searching a directed graph

Dealing with technology changes

Use EA Origin to download games you own

Like for spam

Siloed thinking with use cases

360 degrees

Reset password in Ubuntu

Applications that communicate

iPad Mini

Learning Node by Shelley Powers; O’Reilly Media

Windows 8 Pro

Node.js and Sqlite3

JSON and associative arrays

Adding lots of source files to a WiX installer script

Microsoft Visual Studio Express 2012 for Web

Transfer lots of data between PCs

C# Custom Attributes Example

GitHub client for Windows

App Store

What’s up with the Flash plugin in Chrome?

Bad news

Skeuomorphism

Applying the observer pattern for protocol parsing and handling

It’s that day again

iPhone 5 is an evolution, not revolution

Piping information within the browser

Migrating an AVR32 Studio project to Atmel Studio 6

Binary serialization for JavaScript objects

A matter of opinion

Apple vs Samsung

Our most unique trait

Exchanging binary data in the absence of ArrayBuffer

Plant that responds to touch

JavaScript style guides

Using custom attributes

Avoiding HTML5 canvas

Dragging a group containing image and shapes using kineticjs

TCP socket connection from the web browser

Object-oriented programming in JavaScript

Falling out of love with the iPhone?

Broadband not keeping up with computing and storage?

Some other things I have learnt about programming

Instant Carpool

Embedding the Browser

JetBrains WebStorm

Have Nintendo 3DS in Brazil, no Netflix for you

Obtain dissection data using Field and FieldInfo

What Apple did right with the iPhone

Businesses disrupted by smartphones

IPv4 Network Calculator

A simple configuration mechanism in Node.js

Node.js client to server with socket.io

Broadcast to all sockets

Xcode

Awesome things about Mac OS X

Enable support for RNDIS Ethernet devices in the Linux kernel

Access USB device on Mac OS X using I/O Kit

Linux USB ethernet gadget driver for RNDIS connection establishment

Compare two PowerPoint presentations

Poor batteries

Install Mac OS X Leopard in VirtualBox for Mac

Kindle vs iBooks

Communicate with USB device in C# using LibUsbDotNet

First time on Mac OS X

WolframAlpha for electronics nerds

Microsoft.NET vs Java on portability

Custom USB driver and app using WinUSB and C#

Install Firefox in the Android 4.0 emulator

Coding on the Smartphone

Android SDK path

Escalation from function to cloud

Playing with processing.js using sketchpad.cc

Use the Motorola Symbol CS3070 barcode scanner on a PC

E-books need to be cheaper

Not just phones any more

Brazilian Identity

I’ll buy a Kindle Fire

FFmpeg on Windows

Unlocked iPhone 3GS/4/4S pricing

Android ICS on PandaBoard

2011

Spiritual dream?

The God Dependency

iOS Tips and Tricks

Search for a personal finance app

Convert WAV to PCM using FFmpeg

C language style guides

FreeRTOS

WebKit/Gtk+ 1.6.1 with WebGL on PandaBoard

Send output to X clipboard from the command line

Play WebM streamed over HTTP using GStreamer’s souphttpsrc

Travel visa

OpenCV with Ubuntu on PandaBoard

Read and write raw PCM using GStreamer

What happens before main in AVR32 UC3

Random numbers and Math on AVR32

Edit binary files in Linux

netcat

Capture audio with GStreamer on PandaBoard

WebKit/Gtk+ with WebGL on PandaBoard

Netflix launches in Brazil

Embedded Linux system for PandaBoard with Buildroot

Rebuild specific kernel modules on PandaBoard

Sniff USB bus on Linux

Google’s acquisition of Motorola Mobility

Link dynamic pads of demuxer

Port 443 (HTTPS)

A TCP relay mechanism with Node.js

Desktop remoting for Ubuntu using x11vnc

WebKit/GTK+ on Ubuntu

Ubuntu package management from the command line

Video streaming using jpeg encoding

Audio on PandaBoard

Run WebGL in Chromium Browser on PandaBoard

Execute code from SRAM on AVR32

Write Ubuntu image file to SD card on Windows

How taxes in Brazil hamper innovation

Data applications on MOTOTRBO radios

Why use python?

idioCyncracies - operator precedence

Using the fdsink element of GStreamer

Path to toolchain binaries in AVR32 Studio

Getting latest version of Chromium Browser on Ubuntu

GStreamer pipeline with Tee

Testing Ajax browser application in Chrome without a web server

HP sells Visual Collaboration business; Google announces WebRTC

Axigen mail server for Windows

Frustrated with gestural interfaces?

Convert a bin file to hex

Points to remember regarding C pointers

The Architecture of Open Source Applications

Play ogg audio using the Hello World example of GStreamer

A 7 inch tablet is a compelling device

Angry Birds for Chrome is a milestone for HTML 5

Microsoft buys Skype, advice for Google

Access IMAP server from the command line using OpenSSL

Using shared folders in VirtualBox

Audio input in Ubuntu in VirtualBox

The power of oversight based on continuous forecasting

Stream WebM vorbis audio using GStreamer over TCP

Install latest version of VLC on Ubuntu

Install latest version of Firefox on Ubuntu

Stream live WebM video to browser using Node.js and GStreamer

Stream WebM file to Chrome using Node.js

Custom dissector for ethertype link layer and IP protocol

Use Tile Studio to construct tiled maps

Message exchange between Chrome and Flumotion to establish live WebM streaming

Improving application performance

Web chat using Strophe and Apache Vysper

Stream WebM using GStreamer over TCP

Stream WebM video over RTP with GStreamer

A simple TCP proxy in Node.js

Hanuman for my western friends

Microsoft Loopback Adapter

Node.js to serve static content and as an http proxy

Web chat using Strophe and Openfire

Build a custom embedded Linux system using Buildroot

Playing raw PCM audio using Audacity

Convert ASCII Hex text to binary

Points to remember when using p/invoke from C#

Kindle store books become pricier

Immersive content for the Browser

Understanding IP subnets and routing

Read a file in C++

Configuring a device using an external configuration file

Cost of school textbooks in Brazil

Consuming WCF services using JQuery JSON

Insert a handwritten signature in Microsoft Word 2007

Log all CLR exceptions using WinDbg

USB device information using WMI

Network throughput ballpark using Ping

Apple app store favorites

Auto scrolling to the end of a Gtk.NodeView

.NET volatile keyword

On GTK# and InvokeRequired

Favorite discourses from I Am That

Next Windows will support ARM SoCs

Binary serialization in .NET using reflection

Add bitfield to dissection tree

2010

Information in a PCAP file with a single TCP/IP packet

Information in a PCAP file with a single UDP packet

Know Thyself

Using a PC based Logic Analyzer

Unusual uses of spreadsheets

Create a Wireshark dissector in Lua

Poor quality starts at the base

Test robustness of your networked applications using netem

MeeGo - an alternative to Android?

The holy trinity of sustainability or the CMD cycle

Publish a live screen capture

First impressions with Lua

SQL Server deadlock

Setup a free VoIP solution using FreeSWITCH and X-Lite

Post-mortem debugging of .NET applications using WinDbg

Importing external data - a tale of multiple approaches

Check if C# object is an array and iterate over it

Triangulated irregular network or TIN

Integrating C# app with Moodle 2

Integrating a C# app with Moodle using XML-RPC

Add IIS Smooth Streaming support to Moodle’s Multimedia Plugins Filter

A new car experience - costs in Brazil

2007

A social network paradigm for information presentation

2005

Key security concerns

2004

Producing PDF documents with XSLT and XSL:FO

Hibernate 2

Integrating an LDAP Directory in a Java Application

Integrating Flash and Java

2003

Perspective on software

2002

Criteria to evaluate a good software course

Status of popular markup language standards

2001

The purpose of quality techniques