Beauty salons and plastic surgery clinics are now entering into the mobile app scene. And we take tremendous satisfaction in watching a client’s business grow and in knowing that we’re a part of their success.
In this video case-study, we’d like to show you an app that allows image editing almost on the fly. The graphics library we developed is a core part of the app – it uses mesh-warping algorithm (Bezier curve for warping the images and various effects) and bilinear interpolation (for filling in missing pixels).
Rotate and shrink photos, correct image distortion, clone areas, edit in portrait and landscape modes, zooming – everything in real-time. The client thinks it’s awesome and the App Store ratings too.
If you’re familiar with Google’s ‘Project Glass’, The Layar app and Sherlock (TV series), you already know what Augmented Reality is and how cool it looks, especially on mobile devices. Being a part of a parent concept called Mediated Reality, Augmented Reality is a view of a physical, real-world environment whose elements are augmented by a computer-generated sensory input – graphics, video sound, or GPS data.”
In this video, we’d like to showcase three core technologies we used while developing the iOS app for a client:
OpenCV – aka Open Source Computer Vision Library, a neat library of programming functions mainly designed for real-time computer vision and image processing.
ARToolKit – a software library specially for building Augmented Reality apps. ARToolKit allowed us to solve one known problem of AR development related to tracking the users’ viewpoint.
OpenGL – Open Graphics Library was developed in 1992 and it’s now is a standard specification defining a cross-language, multi-platform API for creating applications and simulating physics that create 2D and 3D computer graphics.
According to Urban Dictionary, it’s like a WOW feeling when you’ve experienced this augmented reality. And if you want to wow your users on a global scale, our mobile development team knows how to do it.
My recent blog (Big Data & NoSQL Technologies) discussed various NoSQL technologies and market vendors. Today let’s dive into column-oriented databases and why they should play an important role in any data warehouse whose focus is on aggregations or metrics (and whose isn’t?).
So you are all probably familiar with row-oriented databases. Tables of data where rows of fields (also called columns) represent the structural storage and the corresponding SQL queries that select, insert, update, and delete that data. Most database vendors like Oracle, Microsoft, Sybase, Informix, and many others all base their technology on this ANSI standard. Column-oriented databases are indeed what you might surmise; tables of data where columns of data values represent the structural storage. What you might not expect is that on the surface many column-oriented databases look and feel like row oriented databases also using SQL queries in much the same way. Creating tables, storing data, querying them are all pretty much identical. They may appear similar, but two principal things to understand is that the significant differences under the hood, in particular, physical storage and query optimization.
As noted in my previous blogs on NoSQL, there is also a column-store technology out there. Let’s not confuse that with column oriented databases. They are different. Since several NoSQL column-store vendors were highlighted before, we will focus instead on the column oriented database vendors here.
First, some key benefits to column oriented databases:
Each year the Microsoft Worldwide Partner Conference – the company’s premier annual event for industry peers and partners – offers technology partners the opportunity to vie for awards in three different categories (Sales, Technology, and V-TSP achievements).
For a 3rd year in a row (we hear the sound of applause), Microsoft recognized our efforts in helping customers modernize their applications and infrastructure. Now in Toronto, Canada (July 8-12), DB Best Technologies (DBbest.com) received the Microsoft Platform Modernization Award for V-TSP Achievement, with special recognition for:
Database migration focus
Field sales and technology excellence
Consistently successful account engagements
Consistently high customer satisfaction
And the winner is…
“There was a lot of excitement this year around Microsoft products (SQL 2012, Azure, Windows 8, Office 15, Surface, Windows Phone),” said Dmitry Balin (@DBalin), CEO and co-founder of DB Best. Also “Hybrid IT” is a new and interesting concept that was discussed at the conference (#WPC12). With regards to data management, the idea is to keep data in the hybrid mode: on premises and in the cloud (SQL/Windows Azure).” Read the rest of this entry »
Kids love coloring. They love being able to create something to remember. And they can learn new skills and develop creativity while coloring on iPad. On the other hand, parents are happy when their children are spending time with educational tools – sometimes coloring keeps kids entertained for hours. Definitely a win-win situation.
There’s no shortage in coloring apps on the market, but we believe we’ve created a very efficient and beautiful one that children will love and find it hard to put down.
For this educational app, our Design and Mobile Development teams are using Scalable Vector Graphics as SVG drawings can be dynamic and interactive. Moreover, scaling the vector images preserves the shapes, while scaling, for example, the bitmaps will reveal the dots.
The app comes with a predefined set of coloring templates. It’s also possible – and pretty much easy – to download more. A couple of other useful features – a color palette, automated saving, the export and reset buttons.
Well, without a further ado, here’s a short overview of the app:
If you’re considering creating a mobile application that rely on graphics and visualization, contact us and let’s discuss your requirements. You can also follow us on Facebook or Twitter to be notified when the coloring app will be available in the App Store.
The People Behind the Code and Design:
UPD. on August 1st, our Cool Coloring app is live on the App Store.
Our client wanted to create a visually engaging app that streams completely safe, parent-friendly cartoons (clips, full episodes, trailers, and features). It’s like creating a mobile entertainment channel for 3- to 8-year-old children that fits right into the palm of their hand.
The server side and the API for this application were provided by the customer. Our Mobile Development crew ported the app from iOS to Android. The app is optimized for tablet PCs and smartphones.
To support constantly updated video content, we created a custom video player that supports https media streaming and allow watching video in any way you like, including the fast forward, pause, resume options. Kids can also search for episodes and add video to favorites.
Today I decided to took a 10-minute walk around the office to see what my colleagues are doing. Can you imagine my surprise when I discovered that almost everyone was reading. I quickly turned on my camera and now you can see what sort of books make us tick.
Natalie, DBA maven – Windows PowerShell 2.0 Best Practices by Ed Wilson. “This guide captures the field-tested tips, real-world lessons, and candid advice of practitioners across the range of business and technical scenarios and across the scripting life cycle.”
Mike, creative juice – Graphic Design Now by Charlotte and Peter Fiell. “What is your vision for the future of graphic design?” Read the rest of this entry »
There are a lot of differences between Oracle and MS SQL Server and you will face many of them trying to move your database from one platform to another. If you use SSMA, which is a good thing to do, you can avoid huge amount of manual work, but you will have to solve some specific problems by yourself after SSMA job will be done. One of them can be raising errors from UDF, which you can easily do in Oracle and can’t in SQL Server without some workarounds because of T-SQL limitations for UDF.
So let’s create some pretty simple UDF in Oracle and take a look on how we can keep its full functionality in MS SQL.
1 2 3 4 5 6 7 8
CREATE OR REPLACE FUNCTION DIVIDE (a int, b int)
RETURN NUMBER IS
IF (b=0) THEN
RAISE_APPLICATION_ERROR(-20002, 'You cannot divide by zero!');
If you try to rewrite it in T-SQL just with obvious syntax and data types changes like that:
1 2 3 4 5 6 7
CREATE FUNCTION DIVIDE (@a int, @b int)
IF (@b = 0)
RAISERROR(59998, 16, 1, 'You cannot divide by zero!')
RETURN CAST(@a AS float(53)) / @b