Tuesday, August 11, 2009

function pointer to class methods

C++ function pointer to a class method:

class Giant {
public:
void method();
};

typedef void (Giant::*Action)();


Taken from Command - Design Pattern
http://www.vincehuston.org/dp/command.html

Monday, August 10, 2009

software design

Excellent descriptions of design patterns, antipatterns, refactoring methods and uml :
http://sourcemaking.com/

Here is another one, restricted to design patterns:
http://www.vincehuston.org/dp/

Tuesday, January 20, 2009

mashups

Here are some mashup sites I created in 2007 to experiment with youtube api, flickr api:

flickr: http://foto.web-cafe.ro/
youtube: http://www.cafetv.ro/
blogs/rss/atom: http://web-cafe.ro/

Scrum, XP, Agile

Lots of Scrum, XP, Agile, Lean, TOC, TQM resources:
http://www.scrumlabs.com/

A Free InfoQ book on Scrum and XP:
http://www.infoq.com/minibooks/scrum-xp-from-the-trenches

Thursday, April 03, 2008

Wordpress Plugin: Simple Sticky Posts

Plugin features:
Adds simple sticky posts feature to WordPress blogs.

Download:
Simple Sticky Posts 0.1 For WordPress 2.x.x

Installation:
1. Go to 'wp-content/plugins' folder
2. Copy 'simple-sticky-posts.php' to 'wp-content/plugins' folder
3. Activate the 'Simple Sticky Posts' plugin
4. You are ready.

Usage:
1. Open the post to be marked sticky in wordpress editor.
2. Add a Custom Field named 'sticky' and set its value to '1'
3. You are ready.

Screenshots:
available soon.

Demo:
available soon.

Version history:
4/3/2008 - version 0.1 - created

Any bug reports, feature requests are welcome.

Thursday, March 27, 2008

simple bash stuff

Run applications from the linux terminal, as a new process:

> apptorun &


Other linux bash command line tips:

http://www.arachnoid.com/linux/shell_programming.html

Wednesday, April 18, 2007

dev-c++ / wxdev-c++

dev-cpp and wxdev-cpp: the best c++ IDE for open source programming / cross platform programming on windows.

http://www.bloodshed.net/devcpp.html

Has an version for developing wxWidgets based GUI for applications.
http://wxdsgn.sourceforge.net/

Try the check for updates feature, where you can select tons of c++ open source libraries to be reused in your applications.

Other places to find extensions:
http://www.bloodshed.net/dev/devcpp.html
http://devpaks.org/
http://blog.weinachter.com/en
http://sourceforge.net/project/showfiles.php?group_id=94270

Monday, November 06, 2006

stl fstream and macros on vs7

while working with visual studio 2003 / 7, c++, fstream, log files and macros, like the following:

#define LOGMACRO (format_string, ...) log (__FILE__, __LINE__, format_string, __VA_ARGS__)


got some errors:
error C2059: syntax error : '...'
error C2061: syntax error: identifier '_DebugHeapTag'
xdebug(29): _CRTIMP2 void * __cdecl operator new(size_t, const std::_DebugHeapTag_t&, char *, int)
_THROW1(std::bad_alloc); // allocate from the debug CRT heap


the solution was in 4 steps:

1. replacing all stl include files matching the pattern:
#include <string.h>
#include <fstream.h>

with header files without '.h' in their names, ex:
#include <string>
#include <fstream>


2. putting some parantheses around the parameters in the macro def. value, like:
#define LOGMACRO (format_string, ...) log (__FILE__, __LINE__, (format_string), __VA_ARGS__)


3. replacing '...' and '__VA_ARGS__' with a simple parameter. vs7 does not support varargs in macros.
#define LOGMACRO (format_string, args) log (__FILE__, __LINE__, (format_string), (args))


4. putting the fstream include in the last line of stdafx.h, removing from any other location in the source code like below.
#include <fstream>
using namespace std;


In addition to the things described above, here is a nice macro tutorial: http://en.wikipedia.org/wiki/C_preprocessor

Thursday, November 02, 2006

linux command line tips

This is a list of linux commands for common operations.
Here is a list of tar, cpio and rpm command samples.

Monday, September 04, 2006

merge .net assemblies

this is a microsoft tool to merge multiple .net assemblies:
ILMerge

usually there are lots of assemblies in one project and the release looks kind of messy, merging them in to a single file can be very usefull

Thursday, May 25, 2006

cross platform UML design tools

here is a 2005 aug study on existing cross platform UML tools:
http://www.linuxjournal.com/article/8334

discussed tools:
- dia
- poseidon
- magicdraw

Wednesday, April 26, 2006

google summer of code 2006

google summer of code is starting again>
http://code.google.com/summerofcode.html

Friday, March 31, 2006

documenting the code

A few useful links to source code documentation tools:

doxygen quick tutorial
Kings Tools - a set of useful tools for writing and documenting code (incorporates doxygen). Visual Studio .NET only.
DoxyS - an advanced documentation tool - branched from doxygen

more of them:
here

Tuesday, March 14, 2006

english words

tenet - "Anyone insterested in learning UML must be familiar with the underlying tenet of object/oriented problem solving"

Tuesday, February 14, 2006

testing related resources:

theory

"testing reflections" blog
http://www.testingreflections.com/

Bug Tracking Guidelines
http://bug-tracking-guidelines.com/

Bug triage policy
Here

Microsoft's Bouncing Zero Bugs

"Bug Links" blog
http://buglinks.org/



bugtracker software:

BugTracker.NET
http://btnet.sourceforge.net/

Mantis Bug Tracker
http://www.mantisbt.org/

Flyspray
http://flyspray.rocks.cc/

Bugzilla
http://www.bugzilla.org/

trac
http://www.edgewall.com/trac/

AceProject
http://www.aceproject.com/

Open Directory - Bug Tracking Software

Open Source Testing
http://opensourcetesting.org/

Wednesday, February 08, 2006

livavformat and libavcodec

here is a tutorial on using libavcodec (and libavformat)
libavformat does the demux stuff, libavcodec the video and audio codec work.

libavcodec on wiki (implemented codecs and other stuff)

video processing tools

virtual dub:
http://www.virtualdub.org/

nundub (a 'hacked' version of virtual dub):
http://ndub.sourceforge.net/
http://nickyguides.digital-digest.com/nandub.htm

PiTiVi (linux):
http://pitivi.sourceforge.net/

Creative Commons

Creative Commons is a nonprofit organization that offers flexible copyright licenses for creative works.
can be found here

Tuesday, February 07, 2006

gstreamer issues

here is a tutorial how to compile gstreamer on windows

here is the homepage of gstreamer

here is the cvs repository for gstreamer

download glib

the gstreamer's story

here is pitivi, a video playback and editing tool based on gstreamer