background preloader

Dictionary of Algorithms and Data Structures

The Brainfuck Programming Language Brainfuck is the ungodly creation of Urban Müller, whose goal was apparently to create a Turing-complete language for which he could write the smallest compiler ever, for the Amiga OS 2.0. His compiler was 240 bytes in size. (Though he improved upon this later -- he informed me at one point that he had managed to bring it under 200 bytes.) I originally started playing around with Brainfuck because of my own interest in writing very small programs for x86 Linux. I also used it as a vehicle for writing a program that created ELF files. Eventually, however, I too succumbed to the Imp of the Perverse and wrote some actual Brainfuck programs of my own. The Language A Brainfuck program has an implicit byte pointer, called "the pointer", which is free to move around within an array of 30000 bytes, initially all set to zero. The Brainfuck programming language consists of eight commands, each of which is represented as a single character. Resources The Brainfuck archive. Brian RaiterMuppetlabs

Rounding Up the Best Javascript WYSIWYG and Markup Editor  WYSIWYG Editor is the first requirement if you want to develop a web application which involved HTML editing and you want your user see a real time preview of what they are editing. Most of the available Content Management System and other publishing platform in the web are using WYSIWYG editor for easy page editing. So I will rounding up to you the best JS WYSIWYG editor in the web. TinyMCE – Javascript WYSIWYG Editor TinyMCE is a platform independent web based Javascript HTML WYSIWYG editor control released as Open Source under LGPL by Moxiecode Systems AB. TinyMCE is my personal choice. TinyMCE Features: Easy to integrate – Only a few lines of code needed.Customizable - Themes and plugins, block invalid elements and force attributes.Browserfriendly - Mozilla, MSIE, FireFox, Opera, Safari and Chrome.Lightweight - PHP/.NET/JSP/Coldfusion GZip compressor, Makes TinyMCE 75% smaller and a lot faster to load.AJAX Compatible – You can easily use AJAX to save and load content! FCKeditor jwysiwyg

Signs that you're a good programmer - Software Engineering Tips The most frequently viewed page on this site is Signs you're a bad programmer, which has also now been published on dead trees by Hacker Monthly, and I think that behoves me to write its antithesis. "Bad programmer" is also considered inflammatory by some who think I'm speaking down to them. Not so; it was personal catharsis from an author who exhibited many of those problems himself. And what I think made the article popular was the "remedies"--I didn't want someone to get depressed when they recognized themselves, I wanted to be constructive. Therefore if you think you're missing any of the qualities below, don't be offended. 1. The compiler and runtime can often answer a question faster than a human can. Symptoms How to acquire this trait Are you excessively cautious? Much of what makes people timid to experiment is chemical--your brain has a small number of adrenergic receptors, so a little bit of adrenaline excites your fight-or-flight reflexes too much. 2. 3. 4. 5. 1. 2. 3.

Papeeria: online LaTeX editor Max AlekseevThe George Washington University, US I found Papeeria very useful in the academic environment … Papeeria provides a solid and universal framework for worries-free collaborative editing of LaTeX documents… Jake KirilenkoSaint-Petersburg State University, Russia This great application made lots of thesis and term work papers of our school significantly nicer… Tarcisio Antonio Hess CoelhoUniversity of San-Paulo, Brasilia Works fine in terms of its main purpose…I was able to write technical articles and no problem occurred. First time here? Sign Up now! Free, fast, no credit card required. Follow Papeeria: Collaborative, free and reliable. LaTeX and Markdown Use pure LaTeX or mix it with Markdown. Desktop and Mobile Papeeria runs on all major desktop operating systems with any reasonably modern browser and Papeeria Mobile runs on major mobile devices. Easy to start and use Full TeX Live environment is already installed and ready to run. Template Gallery View templates Quick simple plots Share

CHRISTMAS LECTURES 2008 - Hi-tech Trek In this series of CHRISTMAS LECTURES®, Professor Chris Bishop invites us on a journey into the high-tech world of computer technology. From the origin of the microprocessor to the development of the internet, the field of computer science has literally changed the way in which we live our lives. But the world of computers is vast and complicated, ranging from the architecture of microchips to use of quantum mechanics for data encryption – it's not always easy to know what exactly is going on inside the box. Across five lectures, Professor Chris Bishop sheds light on some of these questions by tracing the evolution of the modern computer. The CHRISTMAS LECTURES® in 2008 were originally broadcast on Channel Five and were sponsored by Microsoft Research. Media Gallery Image: The Royal Institution Image: The Royal Institution

Sometimes, The Better You Program, The Worse You Communicate. 'peSHIr' on Fri, 05 Jun 2009 10:39:57 GMT, sez: So *this* is why I communicate so horribly! ;-) 'Mike Woodhouse' on Fri, 05 Jun 2009 11:34:33 GMT, sez: My Wife [giving some typically incomplete instructions]: You know what I mean Me: I don't. My wife doesn't program. 'DylanW' on Fri, 05 Jun 2009 11:56:36 GMT, sez: I have never before felt like my chosen career was actually doing me harm. (Kidding. 'Doekman' on Fri, 05 Jun 2009 12:06:01 GMT, sez: So what you are saying is actually that you have less than average programming skills? 'wpfleischmann' on Fri, 05 Jun 2009 12:56:12 GMT, sez: re: (1) Human communication is a lossy medium, so it requires significant redundancy. 'Stephan L.' on Fri, 05 Jun 2009 13:19:35 GMT, sez: Like Doekman says, you can read this the other way around: here are four reasons why the better you communicate with typical human beings, the worse you are as a programmer :-) 'Kyle Lanser' on Fri, 05 Jun 2009 13:55:44 GMT, sez: I Disagree. her: Crab's until 10, right? false; 1.

AI4R :: Artificial Intelligence for Ruby Visualizing Code | Actively Lazy May 6, 2013 by David Green When writing software we’re working at two levels: Creating an executable specification of exactly what we want the machine to doCreating a living document that describes the intent of what we want the machine to do, to be read by humans The first part is the easy part, the second part takes a lifetime to master. I read a really great post today pointing out signs that you’re a bad programmer. Whether you’re a bad programmer or just inexperienced, I think the biggest barrier is being able to quickly and accurately visualize code. What does it mean to visualize code? It might sound trivial, but the first necessary step is being able to quickly parse code and mentally step through what will happen. Where you need to understand looping mechanics and mentally model what happens overall not just each iteration. Once you’ve mastered how to understand what a single method does, you have to understand how methods become composed together. Like this: Like Loading...

Related: