It is all about me!
you have nothign to prove, except theorems


 
Soundtrack:

It is all about the soundtrack in your life.
The one that plays while you act on life's stage.
Po wered by WordPress

-->

October 24, 2008

Inertia sucks

Filed under: Graduate Life — ivan @ 7:47 pm

Thursday and today have been crap days. Just youtube, procrastination and mental stagnation. Just one of those days when I don’t feel like doing anything. The whole house is a mess and the alexhs project didn’t move one inch. I am so close to completion though… I can feel the end…. in fact the end was supposed to be this weekend.
What is going on with me?
Maybe it is because I didn’t eat too well Thursday night — and I ate nothing today. When am-I going to get it! Eating is a necessary condition for productivity and mental stability!

I am thinking about canceling the meeting with Vanda tomorrow. That would just prolong my agony. Can I get any coding done tonight? Can-I? Where is my support network?

OK… back track a second… what is the problem? What is up with this negative shit?
Think about it… the end is soooo close. Who cares how long it will take to get there? It will be over soooo soon. I have a list, i need to work on it and cross items off of it. Let’s go. Ain’t nobody that can stop me. Yeah…. i think i lost my motivation looking for a good song to boost my motivation. Oh wait.. here comes the motivation again…. I am like a leaf in the crosswind of chemicals in my brain.


October 13, 2008

FreeNX — kick ass version of VNC

Filed under: Uncategorized — ivan @ 2:21 pm

I recently installed the freenx server on one machine at work. I must say I am totally impressed. Not only was it easy to install following these instructions, but it was also fairly easy to configure and get to work.

No need for manually creating ssh tunnels, no VNC servers to start, no .Xstartup files. Just download one of the clients and you’re off :)

I posted the install log on the CND wiki, but here is another copy of the install instructions on debian etch.


Install Log


Preliminary

echo "RECIPE: INSTALL NX "
apt-get install xdialog expect netcat libxcomposite1 libxdamage1 xutils xutils-dev build-essential
apt-get install subversion


From BerliOS

cd /storage/
mkdir nxinstall
svn checkout http://svn.berlios.de/svnroot/repos/freenx/tags/freenx-server/FreeNX-0.7.3 nxinstall/
cd nxinstall/
patch -p0 < gentoo-nomachine.diff
make
make install


From NoMachine

mkdir fromNoMachineNX
cd fromNoMachineNX/
wget http://64.34.161.181/download/3.2.0/sources/nxagent-3.2.0-10.tar.gz
wget http://64.34.161.181/download/3.2.0/sources/nxauth-3.2.0-1.tar.gz

wget http://64.34.161.181/download/3.2.0/sources/nxcomp-3.2.0-7.tar.gz
wget http://64.34.161.181/download/3.2.0/sources/nxcompext-3.2.0-1.tar.gz
wget http://64.34.161.181/download/3.2.0/sources/nxcompext-3.2.0-1.tar.gz
wget http://64.34.161.181/download/3.2.0/sources/nxcompshad-3.2.0-3.tar.gz
wget http://64.34.161.181/download/3.2.0/sources/nxproxy-3.2.0-1.tar.gz
wget http://64.34.161.181/download/3.2.0/sources/nx-X11-3.2.0-2.tar.gz

for item in *.tar.gz ; do  tar -xvzf $item ; done


Build

cd nx-X11
make World
cd ..
cd nxproxy
./configure
make


Libs (a.k.a make install)

cd ..
cp -a nx-X11/lib/X11/libX11.so* /usr/NX/lib
cp -a nx-X11/lib/Xext/libXext.so* /usr/NX/lib
cp -a nx-X11/lib/Xrender/libXrender.so* /usr/NX/lib
cp -a nxcomp/libXcomp.so* /usr/NX/lib
cp -a nxcompext/libXcompext.so* /usr/NX/lib
cp -a nxcompshad/libXcompshad.so* /usr/NX/lib
cp -a nx-X11/programs/Xserver/nxagent /usr/NX/bin
cp -a nxproxy/nxproxy /usr/NX/bin


Bins

cd /usr/local/bin/
ln -sf /usr/NX/bin/nxloadconfig .
ln -sf /usr/NX/bin/nxsetup .
ln -sf /usr/NX/bin/nxserver .


Install

cd /usr/NX/bin/
nxsetup --install


Sample Config file

cd /usr/NX/
cd etc/
cp /storage/nxinstall/node.conf.sample /usr/NX/etc/node.conf
vim node.conf
nxserver --status


Startup Script

cd /storage/nxinstall/init.d/
cp -a freenx-server /etc/init.d/
cd /etc/
update-rc.d freenx-server defaults 93

Done !


Logging

ln -s /usr/NX/etc/node.conf /etc/nxserver-node.conf
edit and turn on logging
ca /var/log/
touch nxserver.log
chown root:nx nxserver.log
chmod 660 nxserver.log


Clients

http://www.nomachine.com/download-client-windows.php
http://www.nomachine.com/download-client-linux.php
http://www.nomachine.com/download-client-macosx.php

October 7, 2008

Choices

Filed under: alexHS, Django — ivan @ 4:01 pm

Вчера, по средата на един сравнително продуктивен, решич че би било добре да запаля един джойнт. Може би към 2часа след обяд беше… ако не и по рано.
Остатъка от деня премина като в облак, малко заблуден, малко зашеметен. Само две три идеи ми дойдоха и успях горе долъ да се одържа и не се впуснах в дей-дрийминг както бе възможно.

Имах идея за Django, по спецялно как мога да използвам стандартния метод за проверяване на формуляри като метод за обучение. Учителят ще казва че избира типът въпрос и задава точният отдовор.
След това ние правим forms.Form extension който при валидация проверява дали подадените данни отговарят на точният отговор.

Идеята е да се автоматизира проверката — и може би да се направят проблеми с много етапи, или пробелми с най различни типове инпут.
NumberField
FormulaField
MultipleChoiceField
WordField
ImageRegionSelectField
NumberWithUnitField ex: 30 [m]

Clearly a lot more thought must be put into this for future versions, but I see a lot of promise in a system which would lead the student along the steps towards a solution rather then simply ask them to submit the answer.

Ex:
Question: Solve  \int \sin\theta\cos\theta d\theta
A dropdown box appears asking you to select what approach you want to take:
A: substitution
B: complete the square
C: change variable

choose A, what do you want to subsitute
u=[ text box ]

You enter sin(theta)
the machine parses this and if it is able to diff it, asks you
what is du = [ text box ]

Next it asks you to enter the formula in terms of u vars:
 \int u du
What is the integral [ text box ]

you enter 1/2 u^2
and then substitute back [ text box ] ans:  1/2 sin^2(\theta)

Wow… this would be complicated wouldn’t it…. and many times there is more then one way to do a problem, so if the teacher had one in mind and the student starts using a different approach this could be a very bad situation.

Still, if you put in the time to make a nice multi-step interactive solution then you can re-use it on thousands of people. And if the system is smart enough it would be like having a good teacher who lets you explore things on your own.

What about other domains?
I had in mind a Kinematics problem (block on a slope), where you can choose the orientation of the basis and then you would get different force diagrams in the different coordinates.

Either way, we need rich logic to check the correctness of multiple fields taken together, and possibly suggest alternate approaches to the students. Certainly for many algorithmic type problems, these step by step solutions could be very helpful for the students.

What about psychology? Naaah fuck it…. lets keep it simple, math, physics.

Ex2: Pythagoras
Show triangle img, select hypotenuse : [ select field ]
if yes then image is updated and you are asked to choose which side you are going to call a and which side you are going to call b
Next, show the student the formula and below you have the same
but with text boxes where a and b were,
aske the student to fill them in,
next you can do step by step arithmetic
(subtract a^2 on both sides)
(take square root)

How would the teacher create such an interactive example ???
Herein lies the question…. if we have some easy to use and rich interface then we will be MADE of money 2 years from now.