Building Hackerspace CRM

Hackerspace CRM (Community Relationship Management) is a web application built with Laravel that helps communities around the world to run and manage their Hackerspaces/Makerspaces.
Github: https://github.com/altinukshini/hackerspacecrm

My friends and I run Prishtina Hackerspace (a hackerspace in Kosovo), and since the beginning of it we always struggled finding the best solution to manage members, payments, keys, etc. I’m not trying to reinvent the wheel, we tried many different applications but I think we need a better solutions for this. I think that many hackerspaces face the same problem when dealing with 30+ members. I know all hackerspaces have different structures, but we could maybe boil down to something common and useful for all of us.

There are many open source CRM software out there like CiviCRM and such (paid ones as well) that actually do have more functionality in them but are hard to use because of their complexity.

Hackerspace CRM tends to be more user friendly and come to use only to Hackerspaces. The idea is to have most of the application parameters configurable via the administrator panel. The application should be modular so that other hackerspaces around the world can write their own specific functionalities. Anyone can write a theme for it or even localize the CRM for use in their own language.

Features

So far, I’ve thought of couple of features, most of which I liked in Seltzer CRM, and some that I thought might be useful based on my experience with Prishtina Hackerspace and some local hackerspaces in Balkans. But, in order for this CRM to be as good as it can (and obviously better than the existing solutions), I need your help to let me know what do you struggle with, and what would you need to have in such application? How do you process this kind of stuff, what services you use and what would be the easiest way to complete your hackerspace administrative tasks via this CRM. Continue reading “Building Hackerspace CRM”

HACCSY – Hackerspace Access Control and Check in System

HACCSY abbreviation stands for Hackerspace Access Control and Check in System and that’s pretty much what it does.

HACCSY app is meant to run on a RaspberryPi that’s connected to internet and the front door electric strike lock. It does the job of a simple Check in System and Door Access Control System (2 in 1), it queries a REST service by handing it the scanned in RFID card reader and it will return ‘true’ if the key owner owes less than 2 months worth of their monthly payment. It will return ‘false’ otherwise. It does the same for checking in and out. The computer would then send the signal to the door lock actuator to open it if returned true or do nothing if false. It has a check IN/OUT button to indicate Check IN or Check OUT. It also has an LCD backlight display that displays messages for the user, and an RGB LED that turns RED for Access Denied, GREEN for Access Granted and WHITE to indicate offline mode. Through the REST API, you can also make it available for others to see if the hackerspace is open or not. See working example on the website header at http://www.prishtinahackerspace.org

Code available on Github

HACCSY is built with the following hardware and electronic components: Continue reading “HACCSY – Hackerspace Access Control and Check in System”

Conky configuration

Conky is free software (a desktop widget) which runs in X on Linux and BSD. Originally a fork of Torsmo, Conky’s torsmo-based code is BSD licensed. New code in Conky has been licensed under the GPL 3.0.

Since its inception, Conky has changed significantly from its predecessor, while maintaining simplicity and configurability. Conky can display just about anything, either on your root desktop or in its own window. Not only does Conky have many built-in objects, it can also display just about any piece of information by using scripts and other external programs.

Lately I was configuring/designing/modifying a Conky configuration and I decided to share it with others.

SETUP

Go to github repository and get the Conky config files: https://github.com/altinukshini/conky_blue

Note: If your battery is not showing than you are probabbly using another format exc (BAT1 or BAT2) instead of BAT0 which is the default one.
To fix this issue change line 65 in conkyrc file:

from: ${battery_percent}%
to: ${battery_percent BAT1}%

To call this script in Conky, use the following in your conkyrc:

lua_load ~/.fluxbox/conky/conky_blue/clock_rings.lua
lua_draw_hook_pre clock_rings

Because I have used this conky configuration with fluxbox I have put it under .fluxbox folder on my home directory. Continue reading “Conky configuration”

Getting started with PhoneGap for Android

First of all a short description of what’s phonegap:
PhoneGap is an open source implementation of open standards. That means developers and companies can use PhoneGap for mobile applications that are free, commercial, open source, or any combination of these.
PhoneGap is an HTML5 app platform that allows you to author native applications with web technologies and get access to APIs and app stores. PhoneGap leverages web technologies developers already know best… HTML and JavaScript.

During this blog I’ll be showing mostly the main things you should be knowing when you start working with PhoneGap.
So what I’ll be talking about will be:

  • Importing some of the libraries that you will need…
  • How to make your application go Full Screen in Phonegap
  • How to add a Splash Screen and give it a (delay time)
  • How to create a basic menu with quit and reload function.
  • How to change the application icon instead of the default android one.
  • Where to put some specific lines for the code to work properly.
  • Make app compatible with older versions of Android.

OK, first of all you have to set up your environment for android developement as you have to follow the guide provided from phonegap here. Continue reading “Getting started with PhoneGap for Android”

gimp : Depends: libglib2.0-0 (>= 2.31.2) but 2.30.0-0ubuntu4 is to be installed

After I did an upgrade gimp was automatically removed and then I couldn’t install it.
Every time I tried it showed me the error below..
It took me a while to find where is the problem and fix it, so here is what I did.

This is the error that showed when I tried to install gimp:

$ sudo apt-get install gimp
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
gimp : Depends: libglib2.0-0 (>= 2.31.2) but 2.30.0-0ubuntu4 is to be installed
E: Unable to correct problems, you have held broken packages.

Then I did a:

$ apt-cache policy gimp
gimp:
Installed: (none)
Candidate: 2.7.5-2012020901~oo
Version table:
2.7.5-2012020901~oo 0
500 http://ppa.launchpad.net/matthaeus123/mrw-gimp-svn/ubuntu/ oneiric/main amd64 Packages
2.7.4-2011102201~oo 0
100 /var/lib/dpkg/status
2.6.11-2ubuntu4 0
500 http://al.archive.ubuntu.com/ubuntu/ oneiric/main amd64 Packages

After that I saw that the problem stands at my PPA, (I actually added that months ago just to test some new features, I dont really remember)
What I did is, I removed my PPA from matthaeus123
(I just edited the files and commented the lines) Continue reading “gimp : Depends: libglib2.0-0 (>= 2.31.2) but 2.30.0-0ubuntu4 is to be installed”

Open source wars: WordPress vs Drupal vs Joomla

Every IT person, developer, and programmer has an opinion when it comes to the various open source content management systems out there. It often comes down to functionality and ease of use, but even then the lines are often blurred and there is rarely a clear-cut victor. WordPress vs Drupal vs Joomla – which is really the king of open source CMS? Continue reading “Open source wars: WordPress vs Drupal vs Joomla”

Edit GRUB menu easy way

I always wanted to change the look of my Grub menu, I had too many stuf there like every update I got new Boot Menu options like:

Ubuntu, with Linux 2.6.35-29-generic-pae
Ubuntu, with Linux 2.6.35-29-generic-pae (recovery mode)

and I always wanted to remove all that list and make it more simple so that
just the newest one could show on.
There are too many tutorials on web but non of them tells you the easuest way to do it as using this tool.

The tool here is called Grub costumizer and its a gui tool that helps you do that.
To install it open a terminal window and run these commands:

# sudo add-apt-repository ppa:danielrichter2007/grub-customizer
# sudo apt-get update
# sudo apt-get install grub-customizer

after the install finishes it will list in Applications>System Tools>Grub Costumizer

Continue reading “Edit GRUB menu easy way”

Resizing all images in a folder

Well, the most common application (tool) that I use in Linux for quick resizing an image is imagemagick an cmd based tool
The best 2 commands that I use most are:

Resizing just an image we use (convert):
This command actually takes image.jpg and resizes it on 500×500 pixels but it depends on the real size image so if it’s 600×500
the command wont deform its shape and make it like a square, but it’ll make it exc 500×400

# sudo convert image.jpg -resize 500x500 *.jpg

Resizing all images in a folder we use (mogrify):
When using mogrify its important to tell the path of images.

# sudo mogrify -path /home/user/yourimagesfolder/ -resize 500x500 /home/user/yourimagesfolder/*.jpg

Twitter Application with Google App Inventor

Hello guys..
Firs of all Happy New year ! btw this is my first blog post on this year

Just some days before New Year I did my twitter application for android phones..
And now Im going to show that it works and you can also use it for simple tweets
The application is made with Google App Inventor !
As you can see I did some screen-shots from my pc because I used the Android Emulator, but it also works in phone I used it !

You can download my application here : http://www.4shared.com/file/xvtvN1it/Tweeter.html

First Im going to show you the design…

Here is the Code…And here are the steps where You can see that this app works…. Continue reading “Twitter Application with Google App Inventor”

Gimp Tutorials

Gimp Tutorials i know
Hi, Fellows I’m very interested in spreading the word of Free Software..
btw this Post shows Some of the best Gimp tutorials…

Who said You can’t do Design on GNU/Linux ?

Sites:
http://gimp-tutorials.net/
http://www.gimp.org/tutorials/
http://www.gimp-tutorials.com/

Video: (Youtube Chanel)
http://www.youtube.com/user/malgalin

What is GIMP ?

GIMP ( GNU Image Manipulation Program) is a free software raster graphics editor. It is primarily employed as an image retouching and editing tool. and is freely available in versions tailored for most popular operating systems, including but not limited to Microsoft Corporation’s Windows platform, Apple’s Mac OS X, and GNU/Linux. Continue reading “Gimp Tutorials”

Inkscape

What is Inkscape?

Official Inkscape Logo

Inkscape is an Open Source vector graphics editor, with capabilities similar to Illustrator, Freehand, CorelDraw, or Xara X using the W3C standard Scalable Vector Graphics (SVG) file format. Supported SVG features include shapes, paths, text, markers, clones, alpha blending, transforms, gradients, patterns, and grouping. Inkscape also supports Creative Commons meta-data, node editing, layers, complex path operations, bitmap tracing, text-on-path, flowed text, direct XML editing, and more. It imports formats such as JPEG, PNG, TIFF, and others and exports PNG as well as multiple vector-based formats. It can also export JPG with a little trick.

The main goal of Inkscape is to create a powerful and convenient drawing tool fully compliant with XML, SVG, and CSS standards. The guys over at Inkscape aim to maintain a thriving user and developer community by using open, community-oriented development.

The term Inkscape is made up of the two English words ‘ink‘ and ‘scape‘. Ink is a common substance for drawings, and is used when the sketched work is ready to be permanently committed to paper, and thus evokes the idea that Inkscape is ready for production work. A scape is a view of a large number of objects, such as a landscape or ocean-scape, and thus alludes to the object-oriented nature of vector imagery.

What is vector graphics?

In contrast to raster (bitmap) graphics editors such as Photoshop or Gimp, Inkscape stores its graphics in a vector format. Vector graphics is a resolution-independent description of the actual shapes and objects that you see in the image. A rasterization engine uses this information to determine how to plot each line and curve at any resolution or zoom level.Contrast that to bitmap (raster) graphics which is always bound to a specific resolution and stores an image as a grid of pixels. Continue reading “Inkscape”