Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
M

Mikko Puonti

@Mikko Puonti
About
Posts
28
Topics
3
Shares
0
Groups
0
Followers
0
Following
0

Posts

Recent Best Controversial

  • Should I afraid software patents?
    M Mikko Puonti

    I am developing my first small software product, which is going to be sold and marketed in the Internet. I am just wondering should I start selling in the US market immediately or should I wait until my company is big enough to answer possible unintentional patent infringement law suits (if it ever get big enough for that). It seems like that US has developed it's patent industry to art form, where enforcing patents is a main or significant source of revenue for growing group of entities. So, should I go to US market, or not? :confused: What kind experiences you have? How big chance is that this is going to be happend in first year? What about other countries? I know that UK and EU patent offices are granting software patents.


    This is the internet, where the men are men, the women are men and kids are the FBI.

    IT & Infrastructure sales question

  • Will DotNetNuke dominate?
    M Mikko Puonti

    Most likely Microsoft's Windows Vista ClickOnce (& Pray): Web Deployment is going to change web development scene a bit around year 2008. So you can't just to learn DNN and then stop learning. In every workplace where I have been, I have allways needed to learn new technology and way to work. I have implemented 2 webpages with Microsoft's CMS and I must say that it was damn high cost base infrastucture to build webpages. Meaning: Microsoft's CMS was good and healthy infrastructure, but you needed to code every DAMN control by yourself. I even needed to customize Microsoft's base HTML control, because it didn't allow proper HTML filtering. From this viewpoint, DNN looks pretty good. It have lot's of ready made and useful components that you just can install your system and start using them.


    This is the internet, where the men are men, the women are men and kids are the FBI.

    The Lounge question

  • Interesting Article on Microsoft
    M Mikko Puonti

    Ops... sorry. I really tried to search older thread but it seems like that search didn't work :(


    This is the internet, where the men are men, the women are men and kids are the FBI.

    The Lounge announcement html com linux

  • Too Big for Spaghetti Code?
    M Mikko Puonti

    There is intresting inside look to Microsoft's Windows Vista development in Wall Street Journal - I guess it explains why Vista is late and why WinFS is not included: "Jim Allchin, a senior Microsoft Corp. executive, walked into Bill Gates's office here one day in July last year to deliver a bombshell about the next generation of Microsoft Windows. "It's not going to work," Mr. Allchin says he told the Microsoft chairman. The new version, code-named Longhorn, was so complex its writers would never be able to make it run properly. The news got even worse: Longhorn was irredeemable because Microsoft engineers were building it just as they had always built software. Throughout its history, Microsoft had let thousands of programmers each produce their own piece of computer code, then stitched it together into one sprawling program. Now, Mr. Allchin argued, the jig was up. Microsoft needed to start over." Entire article: Code Red: Battling Google, Microsoft Changes How It Builds Software[^]. It is allways intresting to read how other companies are working in their software projects and compare their experience to my experience. I have had "pleasure" work with small company that had maybe 2-3 programmers in single project and with huge company that had hundrends programmers working in multi-site-multi-country-multi-culture "project". My practical experience is that it is perfectly fine to work with 2-3 programmers without any coding conventions, reviews or other good practices. You can produce "good enough" code fast enough (=economically). Only what you need do to have is prioritized feature list, that you can use to share work actions between programmers and in negotations with project's sponsors. You don't need to pay much attention to software architecture. Biggest drawback is that project knowledge stays in programmers brains. If important lead programmer leaves company - your software development is stopped for next 6 month (good salary negotation tactic ;P). In one huge company we first developed software arhitecture with "core", basic concepts and component framework. Other programmers then started to add their code as components (one programmer normally coded one component). There wasn't any control what was inside components. Co

    The Lounge announcement html asp-net com architecture

  • Gas Prices
    M Mikko Puonti

    benjymous wrote: Have you ever been to the UK? We're currently paying upwards of 90 pence per litre for our petrol That works out at $1.62 / litre which is $6.13 per gallon Here in Finland we have same prices. About $1,43 - $1,83 / litre ($5,41-6,92 / gallon). Average family have one car and maybe half of work/school travelling is done by bus or bicycle.


    This is the internet, where the men are men, the women are men and kids are the FBI.

    The Lounge com linux question

  • Verizon - is this true?
    M Mikko Puonti

    That is funny. I just did read that 42.11% of spam is coming from US... :omg: Maybe their next security step is to block also all US mails. The "Dirty Dozen" 2004: Sophos reveals the top spamming countries [^]


    This is the internet, where the men are men, the women are men and kids are the FBI.

    The Lounge php com question

  • F-Prot Antivirus
    M Mikko Puonti

    I have used F-Prot maybe 6 years now in my two home computer. F-Prot was also used in my last work place (workstations and servers). I don't remember any problems. It hasn't affected to my computer speed and has detected all viruses before they can do anything. Only bad thing what I can say, is that it have currently 12 (!) processes running in my computer.


    This is the internet, where the men are men, the women are men and kids are the FBI.

    The Lounge csharp com question

  • Halo 2
    M Mikko Puonti

    "Let's use alien language - that way we don't need to translate our web pages to other languages!!" :omg: Definitely Hall of Shame material. If I ever going to need example from bad GUI, this is going to be one of most intresting candinates. Clearly someone have used lot's of money and time to thinking and graphics - and sametime forgotting purpose of user interface. I am just wondering why I need to select language. Anyone know how to save this flash-whatever-webpage to my harddrive? "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to build bigger and better idiots. So far, the universe is winning." - Robert Cringley

    The Lounge csharp html database com question

  • Favourite Equations of All Time
    M Mikko Puonti

    My favorites are Pythagoras's theorem, Einsten's equation and Schrödinger's equation. Pythagora's is intresting, because it have so many different situations where you can use it (and with very small modifications you can use it multidimension spaces). Also it is simple and easy to teach. It is perfect. Einsten's equation is "a giant leap for mankind". It is landmark, where mankind starts understand beyond 3 dimensional world and Newton's laws. Schrödinger's equation says: "Stop here. God(s) only after this point." :laugh: Janeway enters and comments: "I wondered who was running my program. Master da Vinci doesn't like visitors after midnight." Seven: "He protested. I deactivated him." Janeway: "What are you doing here, Seven?" Seven: "This simulation contains many religious components. I was studying them to help me understand what I saw in cargo bay two." Janeway: "The data wasn't clear on why Omega stabilised in the last few seconds. Chances are it was simply a chaotic anomaly, nothing more." Seven: "For 3.2 seconds, I saw perfection. When Omega stabilised, I felt a curious sensation. As I was watching it, it seemed to be watching me. The Borg have assimilated many species with mythologies to explain such moments of clarity. I've always dismissed them as trivial. Perhaps I was wrong." Janeway: "If I didn't know you better. I'd say you just had your first spiritual experience." I must confess that I really haven't never used or well-read Maxwell's or Euler's equations, but I guess that is because I am just software engineer. However Euler's quation seem to be like perfect computer program: nothing more to add and nothing more to remove. "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to build bigger and better idiots. So far, the universe is winning." - Robert Cringley

    The Lounge com game-dev question announcement

  • Need Backpropagation algorithm
    M Mikko Puonti

    Creating Optical Character Recognition (OCR) applications using Neural Networks[^] That source code seems to use resilient propagation algorithm (RPROP)[^], which is pretty good basic backpropagation algorithm. I have also couple implementations from that algorithm, unfortunately those implementations are divided to multiple files and are pretty long. So I am not going to post them here :( On more "advanced" version from RPROP is Quickprop[^]. However it might not be better than RPROP[^]. "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to build bigger and better idiots. So far, the universe is winning." - Robert Cringley

    The Lounge algorithms

  • The Final Indignity
    M Mikko Puonti

    Paraguay, according CNN[^] 300 death. Some other newspapers[^] (more recent information?) 426 dead. CNN: Some witnesses said victims were not able to escape the flames because the exits had been locked, possibly to avoid robberies. "I ran toward the main door, but it was closed," survivor Esther Benitez told The Associated Press from her hospital bed. "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to build bigger and better idiots. So far, the universe is winning." - Robert Cringley

    The Lounge question com

  • Looking for a CD -> MP3 ripper
    M Mikko Puonti

    I don't know is Easy CD-DA Extractor[^] helping you, but it have free 30 evaluation version. "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to build bigger and better idiots. So far, the universe is winning." - Robert Cringley

    The Lounge tutorial question announcement

  • The Olympics
    M Mikko Puonti

    I don't normally watch sports from TV, but if I am forced to watch something .... it would be woman beach volley :-D "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to build bigger and better idiots. So far, the universe is winning." - Robert Cringley

    The Lounge com question

  • An Automobile With Feelings
    M Mikko Puonti

    Amazing... what kind patents they can get these days... "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to build bigger and better idiots. So far, the universe is winning." - Robert Cringley

    The Lounge html com help question

  • What Virus Checking Software do you think is best ?
    M Mikko Puonti

    F-Secure[^] Antivirus 5.41: + My university offers it without charges for all students and staff members + Easy to use (not fancy buttons or graphics - just simple UI). + Automatical virus database update (and I think that it also detects very well different kind viruses) + Stable and fast + Doesn't use much processing power when running background + Good virus description database available in the Internet + Centralized management: you can push virus updates to multiple machines in your network + You don't notify it unless there is virus coming from somewhere - Backwebclient: providing too much information and using too much processing power and bandwith (luckily you don't need to install backweb). - if you need to buy it, it will cost pretty much "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to build bigger and better idiots. So far, the universe is winning." - Robert Cringley

    The Lounge question com xml

  • iPod
    M Mikko Puonti

    I have Creative Nomad Jukebox Zen[^] . 20 GB harddrive and nice integration with Windows mediaplayer (don't need other programs). Also plays WMAs.

    The Lounge design question

  • Is GMail adsense blocker unethical ?
    M Mikko Puonti

    I started to use ad-blockers (google bar and spybot) when advertisers started to use those full/ half screen flash/whatever animations and pop-up windows. I guess that advertises wanted to get more reaction and visibility for their ads... in my case reaction was negative: no more ads. I don't have nothing against banners like the Code Project is using (and I can still see code project's banners - and I have clicked them several times). But when you need to actully do something to remove ad, it is starting to be really annoying. Yes, I think that it is unethical to remove those ads that doesn't need extra actions from user. Googles ads are excelent: They don't use much bandwith, and they don't use much area in my small screen. Instead being annoying, they might be informative in some rare cases.

    The Lounge html com tools question discussion

  • C# #define macro equivalent.
    M Mikko Puonti

    Simple answer: no, there isn't equivalant (but you can define symbols for compiler) Complex answer: Some solutions: 1) Develope own preprocessor that handles macros (shouldn't been too hard to do - but will make your code uncompatible) 2) Use #if (compiler symbols) to "select implementation". For example:

    	public abstract class DumpableObject : IDumpableObject
    	{
    #if DEBUG
    		private DumpContext m_contextDump;
    		private int m_iDumpLevel = DumpContext.DEFAULT_DUMP_LEVEL;
    				
    		protected int DumpLevel
    		{
    			get { return m_iDumpLevel; }
    			set { m_iDumpLevel = value; }
    		}
    				
    		public void DumpAll()
    		{				
    			DumpContext context = new DumpContext( this, m_iDumpLevel, DumpContext.DumpDetails.ALL );
    		}
    				
    		public void Dump( DumpContext context )
    		{
    			m_contextDump = context;
    			OnDump();
    			m_contextDump = null;
    		}
    				
    		protected virtual void OnDump()
    		{
    		}
    				
    		protected void Dump( string strName, object obj )
    		{
    			m_contextDump.Dump( strName, obj );
    		}
    #else
    		protected int DumpLevel
    		{
    			get { return 0; }
    			set { }
    		}
    				
    		protected void DumpAll()
    		{
    		}
    				
    		public void Dump( DumpContext context )
    		{
    		}
    				
    		protected virtual void OnDump()
    		{
    		}
    				
    		protected void Dump( string strName, object obj )
    		{
    		}
    #endif
    	}
    

    (Yes I know - it doesn't implement all macro tricks - but at least some). Basicly you really should be able to do almost anything without macros (just use sub methods).

    C# csharp c++

  • AI programming using C#.Net
    M Mikko Puonti

    There is some simple implementations for different kind AI algorithms here in codeproject:

    • Fuzzy Logic Dot Net[^]
    • Neural Dot Net Pt 1 Introduction[^]
    • Path Finder[^]
    • A Simple C# Genetic Algorithm [^]
    • Inference in Belief Networks [^]
    • MetaAgent, a Steering Behavior Template Library[^]

    Basicly AI algorithms are divided to two categories: symbolic and connectionism. Connectionism (from Stanford Encyclopedia of Philosophy[^]): Connectionism is a movement in cognitive science which hopes to explain human intellectual abilities using artificial neural networks (also known as ‘neural networks’ or ‘neural nets’). Neural networks are simplified models of the brain composed of large numbers of units (the analogs of neurons) together with weights that measure the strength of connections between the units. These weights model the effects of the synapses that link one neuron to another. Experiments on models of this kind have demonstrated an ability to learn such skills as face recognition, reading, and the detection of simple grammatical structure. (Note: Neural networks are not only connectionism approach. Also there is very different kind neural networks.) And symbolic (from The University of Alberta's Dictionary of Cognitive Science [

    C# csharp question c++ java python

  • CRC32
    M Mikko Puonti
    1. You don't declare and give value for "length". This is why you get error C2065. For example:

      int main()
      {
      // This causes error C2065, because compiler doesn't know
      // identifier "x".
      int i = 100 * x;
      }

    To solve problem:

    int main()
    {
    	// Here we declare (tell compiler that identifier "x" means integer value) and 
    	// define (tell compiler that identifier "x" value is 1) identifier "x"
    	int x = 1;
    	// Now this doesn't cause any problems, because compiler a) knows identifier x and
    	// b) there is assigned value for identifier "x" (actually C++ compiler doesn't know 
    	// this, and forgetting to give actuall value for identifier "x" would cause random 	// runtime behaviour a.k.a. bugs)
    	int i = 100 * x; 
    }
    

    Here is one possible way to calculate length.

    LONGLONG done = 0;
    UINT size = BUFFERSIZE;
    BYTE buffer[BUFFERSIZE];
    
    int theFile = _tsopen(pCRCSt->FileName, _O_RDONLY | _O_SEQUENTIAL | _O_BINARY, _SH_DENYWR);
    if (theFile != -1)
    { 
    	// Getting file length and storing it to length value. 
    	// 
    	// SEEK_END sets position to the end of file. 
    	// 
    	// _lseek returns the offset in a 64-bit integer, in bytes, of the new position 
    	// from the beginning of the file (in this case it returns length of file, 
    	// because we set seek position to END OF FILE).
    	// 
    	long length = _lseeki64( theFile, 0L, SEEK_END );
    	if( length == -1L )
    	{
    		// The function returns –1L to indicate an error and sets errno.
    
    		// Avoid file processing, but close file
    		size = 0L;
    
    		// Specific error handlers
    		switch( errno )
    		{
    			case EBADF:
    				// File descriptor is invalid
    				// TODO: ADD EXTRA ERROR HANDLING
    				// For example: throw exception or show message box for user.
    				break;
    			
    			case EINVAL:
    				// Value for origin is invalid or the position
    				// specified by offset is before the beginning of the file.
    				// TODO: ADD EXTRA ERROR HANDLING
    				// For example: throw exception or show message box for user.
    				break;
    			
    			default:
    				// Unknown error code				
    				// TODO: ADD EXTRA ERROR HANDLING
    				// For example: throw exception or show message box for user.
    				break;			
    		}
    	}
    	if( length <= 0 )
    	{
    		// On devices incapable of 
    		// seeking (such as terminals and printers), the return value 
    		// is undefined.
    		length = 1L;
    	}
    
    
    	// Move file reading position to beginning of the file. 
    	_lseeki64 (theFile, 0L, SEEK_SET); 
    	while (size == BUFFERSIZE)
    	{
    		s
    
    Managed C++/CLI c++ question announcement
  • Login

  • Don't have an account? Register

  • Login or register to search.
  • First post
    Last post
0
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups