Over the weekend I was talking to a friend of mine and he was talking about websites where people ask for songs and song writers provide them. Basically an online music exchange. Musicians provide songs instead of goods or services and producers or singers search and buy songs...
So this gave me an idea: Do it yourself music engine...
In movies they have these artists in police stations who sketch the picture of the suspect based on the description of the observers.
+
There is now software police uses that does this in an computer environment. People select types of facial features and the computer merges them and then morphs the picture until the observer is satisfied. Much faster and you do not need an artist :)
+
There is already research in what people like in terms of melodies, rhythms etc. There are definitely winning combinations.
= Create a software where the user describes what type of music they want and the computer generates it and morphs it until the user is satisfied. User should be able to sample songs they want. Or select styles from popular songs (there should be a fingerprinting algorithm to uniquely identify a song and other algorithms that drive the work in progress towards that fingerprint (like minimization in optimization) so that they sound similarly but not the same).
Okay, I have to use more than one computer at the same time most of the time. I do not want to use two keyboards two mouses etc. Yes there are hardware KVM switches that let you use multiple machines from one set of monitor, keyboard and mouse, but you still have to switch from one machine to another.
Over the years I started first with KVM switches, then I started using VNC or RDP (Microsoft Remote Desktop) to eleminate the need for extra hardware (and the other machines I use sometimes are not under my desk but far far away). Last year when I was writing some test plans I needed two displays. One for the application I was writing test plans for and one for the document. ALT+TABing was very ineffient. My work machine is an IBM Thinkpad A22. It is kind of an old machine. When you attach an external monitor to newer laptops you can display separate things on the Laptop screen and the extra monitor.. unfortunatelly A22's graphic card cannot handle such a task. So I had to give up the extra monitor but I needed more desktop real estate. So I went to the junk yard (in the office) and grabbed an even older A20. I put a basic WinXP instance on it and started looking for a way to use its screen as an extention to mine.. After googling for an hour I found Maxivista. It is a server/client software. The server part sits on my machine and the Viewer part sits on the A20. When you enable it the A20s screen becomes a second monitor on your machine. It works very nicely over the network connection. You can decide geographically where you want to put the extra screen relative to your screen and then when you move the mouse accross yours it enters the other screen. You can grab and move windows to the other screen or you can open a very large window to cover both screens (useful if you have to draw very large diagrams on Visio). So that solved some of my problems. Actually it is possible to extend the screen upto 4 machines using this software.
When I started thinking that I have finally a good solution for my problems I needed to VPN to a remote site and do some database work. My machine did not have the software and I could not install it on my machine since it was conflicting with other software. So I had to use another machine. I found the machine (another A22) but did not have space on my desk to put it. I had to put it in a folder holder behind my own A22. Of course I could not use the keyboard or the mouse stick on it. So when I was going to get a KVM switch I decided to do another Google search. After 15 minutes I found what I was looking for: A software KVM, and a free one...Synergy. It is also a client/server app. I installed the server on my machine and the client on the other A22. I configured the application with the geographic location of my machine. When I started it I had my solution...When I move the mouse up behind my own screen I moves into the other A22 with the VPN and database sofware, if I move it to the left it goes to the A20 to the left of my machine.
So know I have 3 laptops sitting on my desk. One is an extention to my screen (I do not use its CPU cycle, just the screen) and the other one is an extra CPU with its own desktop. Works very nicely.
Now what I really need is something like X in Unix, but more flexible:
-1 or more screens sharing the same desktop (like a very large screen)
-1 or more CPUs (boxes) should be running the applications on this screen. I should be able to decide where to run the application (both where on the screen and on which CPU)
-Only 1 set of keyboard and mouse.
-It should be a cross OS platform (A new virtual desktop running on Windows, Linux etc) Of course Windows apps will only run on Windows CPUs and Linux apps on Linux CPUs but both will show up on the same desktop. (Cygwin does this partially)
All the pieces are out there: Cygwin, Synergy, Maxivista etc. Someone has to bring them together. The solution would be like having a cluster on every desk. Can someone create something like that for me please????
Over the years I started first with KVM switches, then I started using VNC or RDP (Microsoft Remote Desktop) to eleminate the need for extra hardware (and the other machines I use sometimes are not under my desk but far far away). Last year when I was writing some test plans I needed two displays. One for the application I was writing test plans for and one for the document. ALT+TABing was very ineffient. My work machine is an IBM Thinkpad A22. It is kind of an old machine. When you attach an external monitor to newer laptops you can display separate things on the Laptop screen and the extra monitor.. unfortunatelly A22's graphic card cannot handle such a task. So I had to give up the extra monitor but I needed more desktop real estate. So I went to the junk yard (in the office) and grabbed an even older A20. I put a basic WinXP instance on it and started looking for a way to use its screen as an extention to mine.. After googling for an hour I found Maxivista. It is a server/client software. The server part sits on my machine and the Viewer part sits on the A20. When you enable it the A20s screen becomes a second monitor on your machine. It works very nicely over the network connection. You can decide geographically where you want to put the extra screen relative to your screen and then when you move the mouse accross yours it enters the other screen. You can grab and move windows to the other screen or you can open a very large window to cover both screens (useful if you have to draw very large diagrams on Visio). So that solved some of my problems. Actually it is possible to extend the screen upto 4 machines using this software.
When I started thinking that I have finally a good solution for my problems I needed to VPN to a remote site and do some database work. My machine did not have the software and I could not install it on my machine since it was conflicting with other software. So I had to use another machine. I found the machine (another A22) but did not have space on my desk to put it. I had to put it in a folder holder behind my own A22. Of course I could not use the keyboard or the mouse stick on it. So when I was going to get a KVM switch I decided to do another Google search. After 15 minutes I found what I was looking for: A software KVM, and a free one...Synergy. It is also a client/server app. I installed the server on my machine and the client on the other A22. I configured the application with the geographic location of my machine. When I started it I had my solution...When I move the mouse up behind my own screen I moves into the other A22 with the VPN and database sofware, if I move it to the left it goes to the A20 to the left of my machine.
So know I have 3 laptops sitting on my desk. One is an extention to my screen (I do not use its CPU cycle, just the screen) and the other one is an extra CPU with its own desktop. Works very nicely.
Now what I really need is something like X in Unix, but more flexible:
-1 or more screens sharing the same desktop (like a very large screen)
-1 or more CPUs (boxes) should be running the applications on this screen. I should be able to decide where to run the application (both where on the screen and on which CPU)
-Only 1 set of keyboard and mouse.
-It should be a cross OS platform (A new virtual desktop running on Windows, Linux etc) Of course Windows apps will only run on Windows CPUs and Linux apps on Linux CPUs but both will show up on the same desktop. (Cygwin does this partially)
All the pieces are out there: Cygwin, Synergy, Maxivista etc. Someone has to bring them together. The solution would be like having a cluster on every desk. Can someone create something like that for me please????
Wow, it has been a while... finally had time and mind to write something again. Planning to go back to research again. This time with a more structured plan and time table. I finished some simulations but never had time to put them together to publish them in a meaningful way. Will start working on it soon.
Found a new toy: Amaya from W3C foundation. A very nice HTML, MATHML, SVG editor. I am mostly interested in its math representation skills. I might use it to create some short papers. I can then print them in PDF format and post online.
I will update the Technology blog with some Software wishlists. For a long time I was thinking about some software that would make my life easier... I will write them down, perhaps someone will create them for me :)
Orhan out.
Found a new toy: Amaya from W3C foundation. A very nice HTML, MATHML, SVG editor. I am mostly interested in its math representation skills. I might use it to create some short papers. I can then print them in PDF format and post online.
I will update the Technology blog with some Software wishlists. For a long time I was thinking about some software that would make my life easier... I will write them down, perhaps someone will create them for me :)
Orhan out.
Well I am in Oklahoma....on a project :) Finally managed to fix the pictures. There was a problem with the webserver configurations. Updates killed the server configuration. Fixed now though. Will try to post something substantial this week. Especially on my MultiScale data thresholding research. I have a working code, just need to make some changes to get nicer results.
I added some more articles and information to Technology and Mathematics
categories. My research on Multiscale Data Thresholding is coming along.
I will start putting some intermediate results soon.
categories. My research on Multiscale Data Thresholding is coming along.
I will start putting some intermediate results soon.
I like simple, basic mathematics. I like theories which can be explained with simple tools. I believe that good ideas should be able to be presented in simple ways. If something can only be described in such a way that a few experts can understand it then it means there is still some work needed in that area to convert it to a simpler form. I am planning to talk about things like Prime Numbers, Encryption, Number Theory, Linear Algebra and Differential Equations and methods to solve these problems using numerical techniques. I hope some of these will turn into lecture notes at some point.
Some of the interesting books I read or am reading currently on math and engineering:
The Code Book by Simon Singh If you are interested in the history of encryption and codes this is a great book. Many interesting ideas about how to attack certain type of combinatorial problems without killing yourself with raw complexity.
Prime Obsession The story of Prime Numbers and the famous Riemann Hypothesis (Short description by Wolfram Research) There is also a proof which is not validated yet (Proof of Riemann Hypothesis)
Some of the interesting books I read or am reading currently on math and engineering:
The Code Book by Simon Singh If you are interested in the history of encryption and codes this is a great book. Many interesting ideas about how to attack certain type of combinatorial problems without killing yourself with raw complexity.
Prime Obsession The story of Prime Numbers and the famous Riemann Hypothesis (Short description by Wolfram Research) There is also a proof which is not validated yet (Proof of Riemann Hypothesis)
I am mostly interested in Process Control, Model Predictive Control, Adaptive Control and Nonlinear Control. I am planning to put here classic links and basic theory. Some Matlab files and relevant book infos.
Some links:
Statistical Process Control from NASA
What is PID (simple and short)?
Other Interesting Tuning Algorithms
Interactive online education site from McMaster
More on PID
Some links:
Statistical Process Control from NASA
What is PID (simple and short)?
Other Interesting Tuning Algorithms
Interactive online education site from McMaster
More on PID
This is a collection of articles on various mathematical methods used in stock analysis:
- A good starting point for the terms: Evaluation Stocks http://stocks.about.com/od/evaluatingstocks/
- Collection of introductory articles on Stock Picking http://www.investopedia.com/university/stockpicking/
- Golden ratio and Fibonacci Numbers in Stock Market http://goldennumber.net/stocks.htm
- Data Mining Techniques: How to extract useful information from big amount of data: MIT Course on Datamining
This list is going to grow as I find more information. Please add more using the comments.
Chaos, control and controlling chaos are all very interesting topics. This article in NewScientist gives a great example of the use if chaos in control. They designed a robot to be controlled by chaotic functions. It is just a simulation but I believe it is a great start. There is a big gap between computer scientist who develop the algorithms and the people who apply them on real robots or systems. Genetic Algorithms sound very nice on paper, so does simulated annealing, but who wants to wait 5 hours before a single step is calculated. A great read...
Subscribe to:
Posts (Atom)
