Problem Solver

Simcha Younger

I am interested in solving problems in any field. New knowledge can always be quickly learned, while problem solving skills can be applied anywhere.

Simcha Younger's Problem Solving Skills:

  1. databases
  2. reading technical literature
  3. programming
  4. mathematical models of social behavior (rational choice theory)
  5. economics
  6. internet research

Simcha Younger's Problem Solving Experience:

  1. storing a very large number of text files in a simple directory structure (all files are associated with an id number).
    Problem: directories should be manageable, without very large numbers of files, and without deep or complicated hierarchies.
    Solution: create path from id, e.g. id 143 becomes 1/4/3/ . id 25825 becomes 2/5/8/2/5/ .
    The relevant files are stored in the resulting directory.
    This will allow storing one million files in a directory structure which is never more than 6 deep, and where each folder never has more that 10 sub-folders.
    The files can be found immediately if you know the id.
  2. I am a self-taught programmer, which gave me many opportunities for innovative problem solving.
  3. My favorite concise line of code, to toggle a value (php):
    $i = !$i;
    or to toggle between two set values :
    $toggle = array("option1", "option2");
    $current = $toggle[$current==$toggle[0]];
  4. Problem: Keep my computer's desktop completely empty
    Solution: On Windows the taskbar can be set to auto-hide, and all desktop icons and can be removed (using the TweakUI program). This is not a perfect solution because the taskbar will popup when the mouse moves to the bottom of the screen.
    On Linux, which allows multiple desktops to sort the active programs, all system-tray applications can be left open as regular programs but kept on a one desktop, leaving the active desktop with no clutter. The only programs I run that I need to get notifications from are my IM chat clients. I solved this problem by setting the chat windows to automatically appear on all desktops, so I will always know when someone contacts me.
  5. Problem: Simulate a live streaming radio on a standard PHP/MySQL internet hosting account.
    Solution: This is easily done with a database-driven playlist, which can keep track of what time each song is scheduled to start. (To allow for breaks with no users, the start time is added dynamically, and not set in advance.) I chose to start every song at the beginning for a better user experience, but the database can easily be used to calculate when each song started, and new users can be started at that point (by reducing the file size of the song by the percent time elapsed).