Sunday, April 28, 2013

Raspberry Pi and VNC

Steps to run VNC server on Raspberry Pi

1. Install UltraVNC viewer on your laptop
2. Install PuTTY on your laptop
3.Connect to your Raspberry Pi from your laptop via the PuTTY (using the IP address of the RaspPi)
4. Install VNC server on your RaspPi by typing this command in the PuTTY: sudo apt-get install tightvncserver
4. Start the VNC server on your RaspPi by typing this command in the PuTTY: vncserver :1 -geometry 1280x800 -depth 16 -pixelformat rgb565
5 Start the VNC Viewer from your laptop and type the IP address of the RaspPi. This way you'll have direct GUI connection to your Raspberry Pi.


Sunday, February 10, 2013

Six Thinging Hats by E.de Bono

  • White Hat: - focus on the data available.
  • Red Hat: - use intuition, gut reaction, and emotion. 
  • Black Hat: - think of all the bad points of the decision.
  • Yellow Hat: - think positively, optimistically.
  • Green Hat: - use creativity, get out of the framework.
  • Blue Hat: -  process control. 



Tuesday, October 18, 2011

Creativity Support Tools

On  17-10-2011 I defended my master thesis "Using Internet Services for Creativity Support" on the Faculty of Electrical Engineering and Information Technologies (FEIT) in Skopje.

Abstract

Within the master's work will be developed web tools that will aim to encourage creativity in solving certain problems. Tools will be designed as a web applications using Silverlight technology and thus will be used the capabilities of the Rich Internet Applications standard. The main purpose of the applications will be creating ideas for a given problem to be solved. Ideas can be created in two ways: manually and automatically by using a publicly available Internet services. It will be used Google Sets, Google Products Search and Microsoft Bing Images.
  1. The tool "Web tool for brainstorming" will implement the classic brainstorming techniques and random input
  2. Then the tool "Concept fan with Google services" will implement the concept fan techniques and random input
  3. While the tool "Visual Web Brainstorming Tool" will implement brainstorming, random input and random image.

These are short video presentations of the latest tool "Visual Web Brainstorming Tool" and showing the functionality of the application.

1. SignIn - create new user in order to enter the system
 

2. New Project - create new project for which we are going to generate ideas.

3. My Projects - list of all my projects
 
4. My Friends - list of all my friends that collaborate on a project.

Anybody who is interested in this subject, can look at the presentation I used. It is on Macedonian language.

Wednesday, September 29, 2010

Winners on Vip Android Challenge 2010

Remember the Android challenge I was writing about recently? Well, this is the result after the jury has voted. Congratulations to the winners and all participants as well.
I was satisfied with the result, having in mind that this was new technology and the time spent on making our VipEvents application was small. Besides we were having other responsibilities in our lives :). We were among the first 11 applications out of 80 that were participating in the challenge. I think this is quite a decent result. 

Now we are planning to tide the design and make it "polished". There will be some improvements. Also, we are planning to work on our server-side solution and we'll keep the complete solution android client and web service completely reliable solution for our concept, clients to use both of them.






Saturday, August 7, 2010

Hello Android

This post is about my recent interest in Android, operating system for mobile devices, and its SDK. The reason for the interest was the recent contest/challenge for developing an application for Android, organized by telecommunication company in Macedonia, also the prizes were a good motive. According to the contest organizer the prizes are 500,000MKD (~8000EUR) for first place, 150,000MKD (~ 2400EUR) for second and for all participants HTC Tatoo mobile phone.

My team and I have developed application that will display information about events organized especially in Macedonia, but the location is not a matter, it could be everywhere on Earth. Event's location can be displayed on a map, this way the user can get more sense and orientation how to get to that location. Also the user can post this on his/her Facebook profile. The application has three locales English, Macedonian and Albanian, this means that its interface can be displayed on these three languages. Now enough talking, these are some of the print-screens from our VipEvents application, I forgot to mention its name :). I am so excited about it.



Main screen lists all upcoming events



Event details, location and Facebook share button



Search by location with GPS enabled, gives all events within 50km of radius



Publish new event from the Android device



Search by several criteria: category, location, upcoming.



Select event location from map

The application could be downloaded from Android Market searching its name, VipEvents. Also there are some search engines that display info about applications uploaded on Android Market, here are two of them:

Now we are waiting for the results from the contest on 20.09.2010

Friday, June 4, 2010

How to Think Like Leonardo da Vinci: Seven Steps to Genius Every Day

Recently I've read a book about Leonardo Da Vinci's life and practices that he has been doing in his life. I am very pleased with the book and I would recommend it for everyone to read it. The book is for the seven principles that Leonardo had led through his life.


These principles are:
  • Curiosita: An insatiably curious approach to life.
  • Dimonstratzione: A commitment to test knowledge through experience.
  • Sensazione: The continual refinement of the senses, especially sight, as the means to clarify experience.
  • Sfumato: A willingness to embrace ambiguity, paradox, and uncertainty.
  • Arte/Scienza: The development of the balance between science and art, logic, and imagination ("whole-brain thinking").
  • Corporalita: The cultivation of ambidexterity, fitness, and poise.
  • Connessione: A recognition and appreciation for the connectedness of all things and phenomena; "systems thinking."

Thursday, June 3, 2010

Talented Project Management

I and my colleague have been working on a web application for Project Management, called Talented Project Manager. The application was built for our post-graduate studies at FEIT Skopje.

This is a web application for managing projects within small or middle companies. The main purpose of this application is that when the project manager creates projects and tasks for the project, all assigned team members can collaborate within the project. The application core is a wiki engine so all team members can write wiki pages. Can create and edit existing wiki pages. Can assign already created wiki pages to new tasks etc. Also, other media types are available to be assigned to tasks such as videos and documents. The video media is in .flv format and the documents can be pictures, word documents, pdf documents, and others.



The application can be accessed here.

The user manual is here.

Tuesday, May 25, 2010

Provider model design pattern

My older post about this title was published here. In this post, I’ll try to share my interest in some of the design patterns that were presented in one of the mkdot.net sessions.

Provider model design pattern

Maybe I’m a little late with this post but I want to emphasize the use of the provider model introduced in ASP.NET 2.0 and its implementations within Membership, Roles, Sitemap, and other providers. The starting point for teaching yourself about Provider Toolkit is here and also additional information about building your provider model.
In this post, I’ll show my homework implementing a small Membership provider following the steps described here and here.
 
A provider is a software module that provides a uniform interface between a service and a data source. Providers abstract physical storage media, in much the same way that device drivers abstract physical hardware devices. Because virtually all ASP.NET 2.0 state-management services are provider-based, storing session state or membership state in an Oracle database rather than a Microsoft SQL Server database is as simple as plugging in Oracle session state and membership providers. Code outside the provider layer needn't be modified, and a simple configuration change, accomplished declaratively through Web.config, connects the relevant services to the Oracle providers.

My Homework

First of all setting the web.config sections as described in the picture below is needed. We define a section group name (green rectangle), then define section name (blue rectangle) and type. Then these section definitions need to be included in the <system.web> section.


In the next figure is presented the class diagram of the MyProvider class library. As you can see there are several classes with certain behavior


Class explanation:

  1. ProviderBase.cs –  is the base class common to all providers.
  2. MembershipProvider.cs – is base class (contract), which is used to implement the desired behaviors for the Membership API.
  3. SqlMembershipProvider.cs – is our implementation of the Membership APIs for a Microsoft SQL Server database. Also we can implement it for Oracle or MySQL database systems or it can be implemented with XML or flat files. All of our Data Access Layer (DAL) and Business Logic Layer (BLL) code is put into this class.
  4. Membership.cs – is class that defines routines for our API such as CreateUser, Validate, GetAllUsers, IsActive etc. When calling routines on this class internally it will always forward those calls to an instance of the MembershipProvider.
  5. Provider.cs - is the basic definition of the feature’s provider class. This class contains information about entries in the <providers> section for MembershipVane's configuration section.
  6. MembershipConfigurationHandler.cs - reads the XML configuration information from the web.config file.

Sources:

http://msdn.microsoft.com/en-us/library/ms972319.aspx
http://msdn.microsoft.com/en-us/library/ms972370.aspx
http://msdn.microsoft.com/en-us/library/aa479030.aspx?ppud=4
http://www.agdstudio.com/DesignPatterns/ProviderModel/ASPNET2.0ProviderModel.pdf

Download: