recentpopularlog in

whip_lash : programming   161

« earlier  
Errata Security: TCP/IP, Sockets, and SIGPIPE
There is a spectre haunting the Internet -- the spectre of SIGPIPE errors. It's a bug in the original design of Unix networking from 1981 that is perpetuated by college textbooks, which teach students to ignore it. As a consequence, sometimes software unexpectedly crashes. This is particularly acute on industrial and medical networks, where security professionals can't run port/security scans for fear of crashing critical devices.
programming  network  unix  security  sigpipe  tcp 
22 days ago by whip_lash
Operating Systems: Three Easy Pieces
Welcome to Operating Systems: Three Easy Pieces (now version 1.00 -- see book news for details), a free online operating systems book! The book is centered around three conceptual pieces that are fundamental to operating systems: virtualization, concurrency, and persistence. In understanding the conceptual, you will also learn the practical, including how an operating system does things like schedule the CPU, manage memory, and store files persistently. Lots of fun stuff!
os  programming  book 
6 weeks ago by whip_lash
GitHub - dibgerge/ml-coursera-python-assignments: Python assignments for the machine learning class by andrew ng on coursera with complete submission for grading capability and re-written instructions.
This repositry contains the python versions of the programming assignments for the Machine Learning online class taught by Professor Andrew Ng. This is perhaps the most popular introductory online machine learning class. In addition to being popular, it is also one of the best Machine learning classes any interested student can take to get started with machine learning. An unfortunate aspect of this class is that the programming assignments are in MATLAB or OCTAVE, probably because this class was made before python become the go-to language in machine learning.

The Python machine learning ecosystem has grown exponentially in the past few years, and still gaining momentum. I suspect that many students who want to get started with their machine learning journey would like to start it with Python also. It is for those reasons I have decided to re-write all the programming assignments in Python, so students can get acquainted with its ecosystem from the start of their learning journey.
ai  education  machinelearning  programming  python  tutorial 
8 weeks ago by whip_lash
An A-Z of useful Python tricks – freeCodeCamp.org
I use Python daily as an integral part of my job as a data scientist. Along the way, I’ve picked up a few useful tricks and tips.

Here, I’ve made an attempt at sharing some of them in an A-Z format.
python  programming  tips  tutorial 
9 weeks ago by whip_lash
Injecting .Net Assemblies Into Unmanaged Processes - CodeProject
.Net is a powerful language for developing software quickly and reliably. However, there are certain tasks for which .net is unfit. This paper highlights one particular case, DLL injection. A .net DLL (aka managed DLL) cannot be injected inside a remote process in which the .net runtime has not been loaded. Furthermore, even if the .net runtime is loaded in a process one would like to inject, how can methods within the .net DLL be invoked? What about architecture? Does a 64 bit process require different attention than a 32 bit process? The goal of this paper is to show how to perform all of these tasks using documented APIs.
dotnet  exploit  programming 
10 weeks ago by whip_lash
GitHub - trekhleb/learn-python: 📚 Playground and cheatsheet for learning Python
It is a playground because you may change or add the code to see how it works and test it out using assertions. It also allows you to lint the code you've wrote and check if it fits to Python code style guide. Altogether it might make your learning process to be more interactive and it might help you to keep code quality pretty high from very beginning.

It is a cheatsheet because you may get back to these code examples once you want to recap the syntax of standard Python statements and constructions. Also because the code is full of assertions you'll be able to see expected functions/statements output right away without launching them.
learning  programming  python 
10 weeks ago by whip_lash
Itertools in Python 3, By Example – Real Python
This article takes a different approach. Rather than introducing itertools to you one function at a time, you will construct practical examples designed to encourage you to “think iteratively.” In general, the examples will start simple and gradually increase in complexity.
python  programming  itertools 
11 weeks ago by whip_lash
Kaggle: Your Home for Data Science
Kaggle is the place to do data science projects
data  datascience  programming  science 
august 2018 by whip_lash
Algorithm Repository
This page provides a comprehensive collection of algorithm implementations for seventy-five of the most fundamental problems in combinatorial algorithms. The problem taxonomy, implementations, and supporting material are all drawn from my book The Algorithm Design Manual. Since the practical person is more often looking for a program than an algorithm, we provide pointers to solid implementations of useful algorithms when they are available.
algorithms  programming 
august 2018 by whip_lash
Aho/Ullman Foundations of Computer Science
This book has been taken out of print by W. H. Freeman. You are welcome to use it if you like. We believed in 1992 it was the way to introduce theory in Computer Science, and we believe that today.
algorithms  book  books  programming 
august 2018 by whip_lash
VIM and Python – A Match Made in Heaven – Real Python
On the down side though, VIM can be a pain to configure, but fear not. This article will show you how to get a powerful VIM environment set up in a way that is geared towards wrangling Python day in and day out.
python  vim  editor  programming 
august 2018 by whip_lash
Building a High Performance Port Scanner with Golang
I’ve written about building a port scanner several times before; and this implementation is the fastest one I’ve been able to create thus far. Utilizing the multi-threaded runtime and the baked-in concurrency model provided by Golang, asynchronous I/O performance is just beautiful.
go  programming 
july 2018 by whip_lash
Halcyon IDE
Halcyon IDE lets you quickly and easily develop Nmap scripts for performing advanced scans on applications and infrastructures with a range from recon to exploitation capabilities. It is the first IDE released exclusively for Nmap script development. Halcyon IDE is free and open source project (always will be) to provide an easier development interface to rapidly growing information security community around the world.
ide  programming  Scripting  development  lua  nmap 
june 2018 by whip_lash
Why you should learn just a little Awk - An Awk tutorial by Example - Gregable
To this day, 90% of the programmers I talk to have never used awk. Knowing 10% of awk's already small syntax, which you can pick up in just a few minutes, will dramatically increase your ability to quickly manipulate data in text files. Below I'll teach you the most useful stuff - not the "fundamentals", but the 5 minutes worth of practical stuff that will get you most of what I think is interesting in this little language.
awk  cli  linux  programming  reference 
june 2018 by whip_lash
tuvtran/project-based-learning: Curated list of project-based tutorials
A list of programming tutorials in which learners build an application from scratch. These tutorials are divided into different primary programming languages. Some have intermix technologies and languages.
coding  github  learn  programming  tutorial 
june 2018 by whip_lash
Low Level Bit Hacks You Absolutely Must Know - good coders code, great coders reuse
I decided to write an article about a thing that is second nature to embedded systems programmers - low level bit hacks. Bit hacks are ingenious little programming tricks that manipulate integers in a smart and efficient manner. Instead of performing some operation (such as counting the 1 bits in an integer) by looping over individual bits, these programming nuggets do the same with one or two carefully chosen bitwise operations.
binary  programming 
may 2018 by whip_lash
Defensive BASH programming - Say what?
Here is my Katas for creating BASH programs that work. Nothing is new here, but from my experience pepole like to abuse BASH, forget computer science and create a Big ball of mud from their programs.
bash  linux  programming 
may 2018 by whip_lash
Projects every programmer should attempt? : learnprogramming
I find that I learn more if I can apply concepts en masse in the form of a project. Are there projects that are universal, a good idea, or a good milestone for programmers to universally attempt?
programming 
april 2018 by whip_lash
The Benjamin Franklin Method of Reading Programming Books | Path-Sensitive
Read your programming book as normal. When you get to a code sample, read it over

Then close the book.

Then try to type it up.

Simple, right? But try it and watch as you’re forced to learn some of the structure of the code.

It’s a lot like the way you may have already been doing it, just with more learning.
books  learning  programming 
february 2018 by whip_lash
Understanding Dijkstra's Algorithm
When I first started learning algorithms and data structures, every resource I came across would mention Dijkstra’s algorithm in a sort of mystical, this-is-beyond-your-lowly-understanding manner. I disagree with that approach (in fact, I disagree with that approach for just about everything). Now that I’ve actually invested some time into learning it, it really isn’t as frightful as I was told to believe. I will (to the best of my ability) elucidate Dijkstra’s algorithm here.
algorithms  programming 
february 2018 by whip_lash
c++ - How does dereferencing of a function pointer happen? - Stack Overflow
OK, so what happens to a function value in an rvalue context? It is immediately and implicitly converted to a pointer to the original function value. If you dereference that pointer with *, you get the same function value back again, which is immediately and implicitly converted into a pointer. And you can do this as many times as you like.
c  pointer  c++  programming 
february 2018 by whip_lash
Code your own blockchain in less than 200 lines of Go!
Almost every developer in the world has heard of the blockchain but most still don’t know how it works. They might only know about it because of Bitcoin and because they’ve heard of things like smart contracts. This post is an attempt to demystify the blockchain by helping you write your own simple blockchain in Go, with less than 200 lines of code!
go  cryptocurrency  programming 
february 2018 by whip_lash
CNIT 127: Exploit Development -- Sam Bowne
Learn how to find vulnerabilities and exploit them to gain control of target systems, including Linux, Windows, Mac, and Cisco. This class covers how to write tools, not just how to use them; essential skills for advanced penetration testers and software security professionals.
Advisory: CS 110A or equivalent familiarity with programming
pentest  exploit  development  programming  security  learning  class 
january 2018 by whip_lash
ROP Emporium
Learn return-oriented programming through a series of challenges designed to teach ROP techniques in isolation, with minimal reverse-engineering and bug-hunting.
ctf  programming  security  exploit  development 
january 2018 by whip_lash
Introduction to reverse engineering and Assembly. | KaKaRoTo's Blog
I’ve always said that reverse engineering and ASM is “too complicated to explain” or that “If you need help to get started, then you won’t be able to finish it on your own” and various other vague responses—I often wanted to explain to others why I said things like that but I never found a way to do it. You see, when something is complex, it’s easy to say that it’s complex, but it’s much harder to explain to people why it’s complex.
assembly  hacking  programming  reverseengineering 
january 2018 by whip_lash
The 10 Best Coding Challenge Websites for 2018 – Coderbyte – Medium
This updated 2018 list features 10 websites that offer the best coding challenges and resources to help new and intermediate developers improve their skills, prepare for interviews, and progress in their careers. The ordering of the list is based on level of difficulty (beginner to advanced).
coding  programming  learning 
january 2018 by whip_lash
Why Raspberry Pi isn't vulnerable to Spectre or Meltdown - Raspberry Pi
Now let’s look at how speculation and caching combine to permit a Meltdown-like attack on our processor. Consider the following example, which is a user program that sometimes reads from an illegal (kernel) address, resulting in a fault (crash):
programming  security  intel  bug 
january 2018 by whip_lash
Kernel debugging for newbies | Alex Lambert
The kernel was consistently rejecting my requests as invalid, but I couldn’t figure out why. I read the kernel source but couldn’t figure out which requirement I’d failed. I wanted to step through the kernel-side execution in a debugger. I thought this would be straightforward, but it was much harder than I’d anticipated: it took me two full days of stumbling through others’ blog posts to figure it out. I’m writing up this experience in the hope that it helps others avoid this pain.
debugging  kernel  linux  programming 
december 2017 by whip_lash
The secret to being a top developer is building things! Here’s a list of fun apps to build!
Here are 8 fantastic projects to train your coding muscles! The goal is to build each app with whatever technology stack you prefer. Keep it conflict free, use whatever you want!
programming 
december 2017 by whip_lash
The long goodbye to C | Armed and Dangerous
Could we already be living in a COBOL-like aftermath of C’s greatest days?
programming  c 
november 2017 by whip_lash
Vim After 15 Years | Ian Langworth’s Things of Variable Interest
I’ve been doing a lot more work with Vim lately and have spent some time configuring my workflow for peak efficiency, so here’s a snapshot of my current state.
programming  tmux  tools  vim 
october 2017 by whip_lash
AHL Tech Article - The Curious Case of the Longevity of C | Tech Blog | Man AHL
Will C become the Latin of computer languages, historically interesting but of little practical use? I would argue that it is worth the effort to learn C as it is one of the few languages that exposes you to some fundamental truths about computing platforms that politer languages take great care to shield you from.
c  programming 
october 2017 by whip_lash
« earlier      
per page:    204080120160

Copy this bookmark:





to read