DabarObjects - Models and Perspectives


Views and Suggestion to Java Generics

Posted in News by dabar on the June 4th, 2008

Calling Voice Data Broadcasting Solutions (Experimenting)

Posted in News, Programming, Technology by dabar on the May 14th, 2008

Calling Voice Data Broadcasting Solutions is a technique to capture the voice of a caller through a computer interface and make the voice packet available for all forms of processing and use.

To setup a simple Test Voice Call Casting Centre, You will require the following:

  • 1. A PC with a Sound Card (A good sound card with microphone input with a High Signal to Noise ratio). You may use your laptop to test it but it produces better sound output when used via a dedicated sound card.
    Also ensure you have a speaker connected to the PC. This is vital because you are supposed to hear a Playback.
  • 2. A bluetooth Dongle
  • Bluetooth
  • 3. Bluesoliel Bluetooth Driver installed
  • 4. K700, W800 Series of Sony Ericsson Handsets With Bluetooth Working
  • 5. Then You will need to obtain two very vital components easily available
  • Plugs
  • Plugs
  • 6. Download this Software (Still in our Labs and might have bugs)

Setting Everything Up

  • 1. Ensure that your PC is Windows XP with a functioning Sound Card. Is This Ready?
  • 2. Ensure That You have A Bluetooth Dongle Connnected to one of Your USB Ports. Is This Ready?
  • 3. Ensure That You have BlueSoliel Bluetooth Driver Installed (You may not even have to start it). Is BlueSoliel Bluetooth Drive Installed?
  • 4. Ensure That You have a Java 6 Runtime Installed. Java is everywhere and its FREE download. Is Java On the PC? If you type Java in Command Prompt, Does Something Happen?
  • 5. Ensure That You Have A W800 Series or K700 series with Bluetooth Turned On. Is this available?
  • 6. Ensure That You have Connected the handsets handsfree using the audio jack above into the sound card of the PC. Is this connected?
  • 7. Unzip the Downloaded callcasting.zip file into a folder. Is this Done?
  • 8. If You have passed all the above test? Double Click on callcast.bat. This will launch an interface that you will use to test the service we are trying to demostrate.

After the application might have started? you should see something like this
stage 1
Application is working
stage 2
This process should trigger the bluetooth drivers on the PC and it will check for surrounding bluetooth items, ensure you do this with the connected phone as the only bluetooth around just to minimize confusion in choosing devices.
This shows that the bluetooth scanning is successful because it should show the Device Address only. so ensure you have the right one.
stage 3
Right Click on the bluetooth device address of the Phone and Select the option show. This is to perform some tests that ensure that the device connected is alive and compatible.
stage 4
Click on Start Service
stage 5
Wait for a while until you see “No Active Calls” before proceeding on your test
Bingo!

How to Use This Whole Setup
Pick up another phone and dial the number of the handset connected to the PC. Ensure that you are not close to the PC we have just setup to minimize echo effects. When it starts ringing, after a while the ringing will stop. This shows that the computer has picked the call. Speak and say some words (Speak Out ). When you are through speaking, Disconnect the call.

To show that the test was successful you will hear a playback of the words you spoke into your phone.

At DabarObjects, we have developed it to the extent that it can stream the recorded message online immediately and even use voice recognition tools to translate your speech into test.

DabarObjects Releases a Boutique Management Software

Posted in News by dabar on the April 5th, 2008

Boutick is typically a Simple interactive Point-of-Sale and Inventory management software for Boutiques.


Boutick Home


Boutick Inventory

BouTick is a management software for boutiques specifically designed to help them keep track items in the boutique, manage sales
of these items and bring them closer to their customers

As more business people and traders in Nigeria are afford computers and the internet among which we have a lot of rising boutiques with the latest fashion out their, the need for them to utilize their computers to help their businesses will be realized.
The fashion business is really growing everywhere and as newer stores open. It is discovered that many startup buotiques move around often
with their items trying to make sales to different customers. During this times, the owner of the boutique may finds themselves loosing track
of so many sales and customers. For someone who is not an accounting expert, this could be quite a challenge. With BouTick, you can easily keep track of all your sales and inventory.

System Requirements

  • Windows XP SP2
  • Minimum of 128MB of RAM, 256MB will be best
  • Space Requirement: 100MB of free Hard Disk space
  • Minimum Screen Resolution: 1024 x 768
  • Java Runtime Technology version 6

Installing The Software

  • Download the Software by clicking here
  • You will require Java on your machne to successfully run this software. If you have a recent laptop from any major vendors, you may already have java. But if you are not sure that you have java, you can download the latest java from www.java.com
  • After you have successfully installed java on your computer, you proceed to install the software
  • After the installation is successful, you will see a shortcut on your desktop, where you can start the application
  • If you do not want to bother installing Java, then you can download the bundled version to test by clicking here

BouTick is simple to install and use.

Getting Started

After installation, You should see an icon on your desktop, double click to start. If you happen to see the screen like to image shown above, then you have successfully setup the software

Demo Login

username: admin
password: admin

Boutick also runs on Vista and Linux Operating Systems

We are sorry we do not yet have a descent installer for Vista Operating System or Linux as we are working on it. However if you are curious and you want still go around and try, then you should download the zipped distribution. Click here to download the zipped distribution

Unzip it into a folder, open the folder and double click on launch_app.bat.

If you are on Linux then simply write a small shell script to run this command line:
java -classpath "boutick-main.jar" com.dabarobjects.salespoint.starter.AppStarter

Features In Boutick

  • Visual Classification of all the thousands of fashion categries and ability to create more
  • Ability to take inventory of all kinds of items being sold
  • Ability to generate tagging codes that can be used to identify any category of boutique item in your boutique
  • Ability to alert you when a stock is running low
  • Ability to see a listing of all items in your store per time
  • Ability to help you plan your procurement trip by generating a chart of all items for you to print and use to take inventory notes as you make procurement of various items
  • Ability print out Tagging codes that you can use to tag every item or their shelves to quickly identify every item within the shop.
  • Boutick also makes it easy for some newly recruited sales person to know about every item in the shop
  • You can create priviledged access for 3 class of people: An administration (The manager), an Inventory manager and an Sales Person. If a user has a Sales Key, then they cant get into inventory section
  • Some bouticks go out for external sales, with this software it is possible to synchronize your central database into a mobile laptop and then tkae your laptop out for external sales and then when you can back to your store, you can now synchrnonize all your sales. If you are lossing track of so many customers owing you money, then subscribe to this
  • Boutick can show you all your sales track of all items and present to you how much gross sales that you have made . You can also use a calendar tool to visualize trade for any particular date in the past
  • Boutick can also help you generate your balance sheet and show you how much people are owing you and how much you have made totally
  • Boutick can print out all these reports of sales, new stock procurement and your balance sheet
  • Boutick can move these records into Spreadsheet format for you
  • Boutick makes it easy to update your new stock from a procurement trip
  • You can set various alert point for various items so that you get notified just when their quantity in the store has gone below that level
  • With a single click you can see all stock that has been flagged low. Infact you can see this at the point of sales
  • With Boutick, you can handle sales easily because it gives you various forms of navigators to locate a specific item that you want to sell and then it can help you prepare your receipt for your customer
  • Boutick makes it easy to simply get your customers contact info at the point of sales. (this is fashion, you may want to alert them in the future on new arrivals).
  • Boutick can also help track all the customers that are owing you
  • Boutick is visually rich that anyone using it can enjoy it as they sell
  • If you have a touch screen system (especially for to top of the grade boutiques, then this is the way to go)
  • Boutick can even tell you as you log in into it what items are the fastest selling in your boutique and who your biggest spender is among all your customers
  • Many more stuffs are built into Boutick and more will get added as we get more feature demands from our customers.
  • Boutick can remind you on your customers birthday, notify you on uncleared checks, handle returns, manage customers credits and debits.

Who is using Boutick

  • 1. EveryMan Clothes and Accessories, Zone 5, Abuja
  • 2. Bubez Plaiz , Zone 5, Abuja
  • 3. Great Expectations, Queen Plaza, Wuse 2, Abuja
  • 4. Pierre Cardin, Ceddi Plaza, Central Area, Abuja

Screenshots

Home Screen

Boutick Home

Sales View

Boutick Home

You can also hide menus so that all you see is your crucial section

Boutick Home

If you can afford a touch screen, then this module makes selling fun. for a high taste boutique, this is good option

Boutick Home

Screen for Setting up your store.

Boutick Home

Inventory Module and Options

Boutick Home

If you want to organize and tag your items, them this is the way to go

Boutick Home

Adding New Stock

Boutick Home

Inventory and Sales Auditor

Boutick Home

Balance Sheet

Boutick Home

It is important to keep track of your customers and those owing you

Boutick Home

With the click of a button, you can see all your debtors

Boutick Home

So many other features exist, like Procurement Trip Planner, Printing of receipts and alerting you when certain stock is going out of store.

Give DabarObjects BouTick a Try.

Download the Beta Version

Who should use this software
If you have a boutique, this package is for you. If you are starting out and you are quite mobile as well in your sales, this is a must have package. It is only available in Nigeria at the moment.

If you find Boutick software useful and want to implement it in your store, please feel free to contact us via:

Call: 09 4817156 | 2348085039289 | 234 803 5891780 | 0803 28 53 225
Email: info (@AT) dabarobjects (.DOT com)
www.dabarobjects.com

Why I think Vista is bad for Business

Posted in Technology, Opinion by dabar on the March 7th, 2008

To me, the best of software products are those designed to stay out of the way of the user. Getting 1000 pop up dialogs on small driver issues, false security alerts , execution of a process is definitly not cool. This has always been the tune of my choice of software products. I remember those days we used to say Linux was too problematic because we spent too much time trying to configure this and that. Now this is 21st century almost rounding off the first decade of the 21st century and yet, there is no operating system that can quietly handle configuration issues without getting too much in the clients way.

Why do we buy computers? the computer is not about how sweet an operating system is, it is about ensuring that those software that help our dialy lives run properly unhindered. Now how do we describe it when the operating system itself now becomes the hindarance to that usage? hmm?

This is the story of my vista box.

Now, this is why I am angry
. We market our software to our clients for windows and the first problem we get when we are trying to implement our solution for our clients is they(the clients) asking us if we can help them resolve one vista issue or the other. This is not about our solution now, this is about the platform meant to run our solution for them. And if we dont fix vista, we cant get to encourage them to try out our solution because why? vista keeps getting in thier WAY!!. We are supposed to spend time gathering bugs to fix in our software to that we can better serve our customers not fixing vista…this is really bad for business.

One of my customers was going to implement of our solutions for managing his boutique. I assisted him in getting a Dell Vista Laptop for his business so that we can deploy our solution on it for him. For some reason, after a while the system started popping up so many bluetooth driver issues and yet the bluetooth was working.

An annoying window more annoying than when you have a computer virus disturbing your screen keeps popping up asking to install of bluetooth drivers. All this was happening while the bluetooth still works. I dont know where that came from. Secondly to get to install an HP laserjet driver was pain. All we are trying to do is print a document and we spent 2 nights trying to install a printer. I went to HP site to download the recent vista compatible driver.

After installing the driver, i could not even locate my HP laserJet in the printer folder. Fine I am sure there must be some expert advice to this problem like HP imcompatibility but get to understand this point: This is waste of my precious time.

The next client we were going to do something similar for happens not care about the platform, but simply the software we were trying to implement for them. So we purchased a Dell Desktop and it happens to come with vista. I dint even get to look it in the eye before formatting it and putting Ubuntu. Printers, USB, Sound card, video card, wireless, network; all worked out of the box in ubuntu. Our solutions are java based so that we had no issues. No popup asking me for this and that. All that visual eye candy in vista cleaned off? what a waste ;) . Stay with XP while its not broken. Its also a popular saying: “Dont fix what is not broken”. Migrating from XP to Vista because of the excessive eye candy they packed in it wont increase your returns in any form. I have never been frustrated in my life before trying to make a USB based printer work. Now to sell my software for my first client, I have to keep digging the internet for answers. This is not nice

If you are a vista expert out there, please be sure to send in your contact so that we can reach you for vista support.

We sincerely hope the vendors of vista will commit more funds into cleaning out this mess because with this attitude, vista is not going far.

Meanwhile, there is something I wish software makers can always adopt. Dont get in your clients way. Think about this feature for instance: In an operating system, how about the OS waiting for you to finish using your favourite program before popping up issues. There is should be a universal way of turning on a silent mode for all popups whatsoever so that after you have terminated your favourite program, the balloon tip can tell you “There are some messages waiting for your approval”. Like this computers can keep doing what matters most and not getting in your way.

DabarObjects Shunt Framework Pattern

Posted in News by dabar on the February 8th, 2008

The Shunt framework was created in DabarObjects to make JPA/Hibernate layer easy to manage for us. Essentially it violates the DAO pattern but its one pattern that helps us break the large sum of business data operations into modular and tiny bits that can be used easily for business applications. Its simple and brief.

In the shunt framework, operations has an interface Operation,

interface Operation was further broken down to two interfaces which extends it:

1. ReadingDataOperation<T> - involves a Query operation

2. WritingDataOperation - a persistent or update operation


public interface ReadingDataOperation<T> extends Operation{
T performBusiness(EntityManager em) throws Exception;
public T defaultValue();
}

Now what we do is this: We have Customer entity, Now lets say we get the list of all our customers, we will write:


public class ListAllCustomersOperation implements ReadingDataOperation<List <Customer>>{
List<Customer> performBusiness(EntityManager em) throws Exception{
return getQuery(em, "SELECT c FROM Customer c").getResultList();
}
public List<Customer>defaultValue(){
return new ArrayList<Customer>();
}
}

There is a OperationExecutor class that is created per operation to carry out this operation. This executor class takes care of all the transaction templating and also has some role checking infastructure.

So in my code, i will say,

DataExecutor<List <Customer>> exec = new DateExecutor<List <Customer>>();
List<Customer> customers = exec.execute(new ListAllCustomersOperation());

The generics notation simply tells us that we are expecting a List of Customers when this operation executes. These classes are simply thread-safe transaction wrappers and helpers which has made work awefully easy.

There are so many reasons this is useful to us:
1. We can distribute operations to different nodes of a cluster
2. We can queue them
3. We can serialize operations
4. Infact this can be more fun with Batch Logic.

Batch logic helps us gather so many WritingDataOperations together and flush them down the database in a single transaction. Hibernate has an impressive performance with this.

Frameworks We Use In DabarObjects

Posted in News by dabar on the February 8th, 2008

Yes, We are Java! because it delivers great returns for us. DabarObjects is really targetting expanding its network of great minds and java developers. Activities around this has been on for some time now viz a viz the TA Program.

If you are a freelance developer out there and you need a leverage to be on your own, here is the list of technologies and frameworks we use in DabarObjects to deliver great output to our customers. For you to better align with our services and join our TA network programme, then you must be compatible with these technologies.

1. JAVA Technology (Core)
2. Spring Framework (DI, AOP, Hibernate) (Core)
3. JPA, Hibernate (Core)
4. Wicket Web Framework (Core)
5. Netbeans IDE 6
6. Jetty Server
7. Tomcat Server
8. ActiveMQ JMS
9. JavaMail
10. Swing UI
11. AJAX, CSS, XHTML
12. MySQL

We only borrow C# guys for integration uses but when it comes to delivering our solutions and services to our customers, we stay with the list above.

These are not necessarily the best tools in the market as customers care less about the technology, but for DabarObjects Solutions, these tools fit in like a glove and give us incredible returns and leverage to serve our customers greatly.
Also, our own internal frameworks are based on these technologies. Teaming up with DabarObjects in the TA program requires some form of alignment with a couple of these frameworks.

Other areas of active research which can also facilitate our alliance with you are:
1. OSGi
2. Distributed and Scaling Solutions
3. Virtualization

DabarObjects Technical Associates

Posted in News, DabarObjects by dabar on the January 22nd, 2008

To satisfy the ever increasing IT demands from most of our customers, DabarObjects Solutions is annoucing the commencement of a programme called Technical Associate Program. This program is designed to raise partners and a vibratant team to tie up with for the ever increasing requirements of our customers and clients. With this program, there will be an opportunity for young software developers and web design experts who run their business by freelancing to tie up with DabarObjects as Technical Associates where they will be required to co-exist within the same physical business location for an agreed period.

Why you should sign up with DabarObjects for these program:
For the year ending 2007, our first business year, our balance sheet was reaching 8.5 million naira in project worth and recurrent spendings.
For the new year 2008, our balance sheet is projected to reach 100 million in project worth and spendings. This is not a dream, this is reality. This is because we are broadening our reach within Abuja city and opportunities open more and more.
However, because we have a policy that forces us to look beyond the money and deliver clients jobs to expectation, we will need to tie up and broaden our networks.

Benefits of this program:
1. Free Accomodation in Abuja
2. Reasonable partnership servicing allowance per month
3. Stock options in all projects (which will be shared among the total number of technical associates taken in)
4. “Geeky” and quiet working enviroment with good internet connection

Requirements for Qualification

0. Must have a registered business name (Required)
At least 2 of these {
1. Minimum of 4 years experience in Core Java, Core J2EE or Core C#/.NET.
2. Elegant Web Layout and Design Skills
3. Linux Server Management
4. High performance Database (MySQL) Administrator
5. Strong Negotiation Skills
}
6. Passion for IT ideas and Software development
7. Complies with Team specifications
8. Between the age (21 - 27 years old)
9. Single
10. Male or Female
11. Prepared to migrate to Abuja
12. Preferrably has some form of link or membership with the Cowblock.NET society, Ile-Ife.

Essentially, the Technical Associate Program was created to help both parties achieve their goals.

Goals of DabarObjects:
1. Deliver Projects to Clients expectation
2. Broaden Team, Perspectives and Network

Expected Goals of Technical Associates
1. Broaden experience
2. Get leverage, business connections and cash to boost thier planned setup

Also, If you have a wonderful initiative and you have the expertise to develop it but you lack basic funding to complete a prototype and a proposal, then this is another fantastic chance.

If your immediate goals fall within the above and you also posses the qualifications listed above, then you can sign up with the DabarObjects technical associate program.

To sign up, please send in your terms statement and a description of what you can deliver in high challenging projects to ta @ dabarobjects.com. or simply place a call to 09 481 7156 or 0803 589 1780 between the hours of 9A.M and 4P.M.

Content of your Statement:
1. A brief business profile
2. business contact
3. how will you like to work and how much you will like to be serviced with per month

Stock options are negotiated according to contribution to a particular project

To get more details, simply place a call to 09 481 7156 or 0803 589 1780 or send an email

Deadline: February 24th, 2008

DabarObjects

Comments Off

Netbeans Sample Browser Plugin

Posted in News by dabar on the January 17th, 2008

I was just wondering how I can browse and preview my WebPages from Netbeans IDE and taking a quick tutorial on Netbeans Module Development,

Netbeans Browser Plugin
With the DJ project and basics in Netbeans Module development, this is trivial but moving on from here is were I am stuck with the Netbeans API tutorial for sometime. If you quickly know how to make this stable, please do because this is one plugin I really need now

My Only Problem with Java Closures Proposal

Posted in News by dabar on the January 14th, 2008

Being a typical java developer for some 5 years now, I have participated in a number of java projects in the past and the successes of many java projects I have participated in can be linked to the unneccesary complexity not included in the java language.

If java was actually a failure or “is dead” or “is dying” or “is slow” like ppl claim, it will not have produced the high volume of frameworks, codebase and jobs out there. I also do believe that it is the simplicity yet powerful feature of the language and the VM that has led to the high volume of frameworks out there and adoption. I also do believe if you can solve a problem in a technology, why would you want to jump somewhere else for buzz sake most of which will still have its problems.

Now speaking of closures, I am unbiased at all levels and I have watched videos on YouTube and listened to Neal and Josh propery on the matter. I do not work for Sun or Google. I run my own business in Nigeria and we have prospered well in the java based projects we are handling due to the free and rich tool set in the java space. Java is not the best language but it simply works backed by a strong VM and rich APIs and toolsets.

My vote is that closures should be supported but…

I hate the syntax being proposed for closures. And my primary annoyance with the closures proposal is its idea of using =>. This can quickly create confused code especially when one needs to actually perform a logical operation of < = an can also be confused with >= within the closure definition. The proposed syntax does not look that java language friendly and seems to be heavily influenced by dynamic language culture. something should be done about this.

Please what is wrong with

{int, int returns void}

why not introduce a returns keyword instead of =>. Because I think => is confusing really.

We have not confused throw with throws, so i dont see why returns cant be used instead of =>.

Also, if closures is not done carefully in a java friendly manner, new APIs that will emerge which will grow so complex that new java programmers will start to hate the language and APIs will be difficult to understand leading to the abandoning of the language. The real army of java developers out there are not professors or doctors of computer science, they are ordinary java joes from simple universities and training institutes. The complexity that may be introduced by newer APIs can quickly reduce the adoption of the language.

Know for sure whether anybody is willing to agree or not, java is successful today partly because of the simplicity in the java language. I have often even hated J2EE in the past because it introduced unnecesary complexity in deploying web apps viz a viz web.xml etc but looking at the language in itself, I do not see much complexity in interacting with the concepts and i realized that the moment I overcame that fear of learning J2EE, i was easy for me to jump from struts to tapestry to JSF and finally i landed in wicket but I still believe that introducing closures like this can complicate newer APIs and affect the happiness of java joes out there. Please let us thread carefully.

Job 444 recruited

Posted in News by dabar on the December 13th, 2007

This is to request for a post of a part time Web Master.
Requirements:
1. Industrial Training or NYSC Corps
2. Computer Related Background with internet experience
3. Basic Knowledge of HTML
4. Fireworks , CorelDraw or Photoshop experience
5. FTP basics
6. Lives in Abuja

The type of job is contract and the duration is 4 months with 12,000 Naira per month contract sum.

Working Hours: 4 dedicated working hours , 4 days a week throughout the month for 4 months

Detail of Work:
1. Scanning Pictures
2. Editing Pictures
3. Uploading Pictures
4. Populating Content
5. Reporting Errors and problems
6. Filling Request for Enhancements

If you are interested, please send in your CV now before the 2oth of December 2007. You will be contacted and interviewed on the 20th of December, 2007 at our Main office:
Floor 4, NICON Plaza
Central Area, Abuja
The selected candidate will resume duties in January 12th, 2008.

Next Page »