Thoughts on my own. Posts not reflect the opinions of my past or current employers. More about me: diegopacheco.github.io
Networking Troubleshooting/Debugging with Wireshark & tcpdump
Get link
Facebook
X
Pinterest
Email
Other Apps
This is the 3rd and final post on the Apache Mina series. I highly recommend you check out posts I and II. tcpdump is very important networking debugging tool. tcpdump allows us to capture traffic because on a specific port. Wireshark is a visual(there is a terminal version as well) network capture and analyzer tool. We will use tcpdump to capture traffic between our mina TCP server app and a telenet client session. We will use the tcpdump capture to feed Wireshark and we will use Wireshark to understand what's going on between the client and the server on the network stack. Wireshark has a killer feature to follow TCP flow: meaning you can see all exchanges from client and server. So I made a video showing in detail this whole thing. So Let's get started.
When I start on IT, several years ago(+15), C was the first language that I learned. But was not the first language I mastered and deployed in production which was...surprisingly Visual Basic 6.0. However, when I learned C or any language back on that old and arcane time noddy was into testing. However now is impossible to work professionally in any language without tests. C is a low-level language but still kicks ass and has several interesting libs/frameworks. People use to fear C a lot because of lack of syntactical sugar but once you get used to it is not that hard at all. Today I want to show how you can do Unit Testing with C. I will not show how to do Unit Testing with C++ but with C ANSI actually. We will be using Check a unit test lib for C ANSI.
Zig is a general-purpose language created in 2016 by Andrew Kelly . Zig aims to fix the issues C language has while being pragmatic and simple at the same time. Zig really shines as being simple by not having any hidden control flows, not having hidden memory allocations, no pre-processors, and no macros. Basically, it's one language and one language only. Since pre-processors and macros can get really complex and become their own universe. Sure it's not the Zig Philosophy. Zig Compiler(Zig cc) also is a C compiler, and the interoperability from C to Zig is very good. Clearly, we can see influence from other languages like Go and Rust; however, Zig is pretty unique and different from Go and Rust. Zig is fast. Zig is perfect for system programming. I bet we will see a lot of solutions being built in Zig. As a languages aficionado, I like to learn at least one language per year and sometimes more; Zig was my 2021 pick, did not regret it. Even if you dont use all languages in p
In 2018 AWS CTO(Vogels) said : "Security is everyone's job". For the last 2 years, there was so many famous and big data leaks and breaks that made that statement be very true more than ever. Security often could mean worst performance and worst user experience so in order to get it right you really need to think about the designs before jumping into to code and consider performance and user experience has main requirements. I was thinking about writing about how to do HMAC in Java for a while and recently Redis 6.0.0 come out and to my surprise, there was a refactoring on the password part in order to use HMAC. Security easily could scare engineers often because it is not something well spread yet but I believe this will change soon. It does not matter if you have to deal with PII Data or not, security is super relevant because everybody is running their workloads at the cloud or with IoT and Edge devices which means more distribution, more code, more points of fail