Are there any PDA or Outlook Synch Frameworks out there? [closed] - mobile

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 3 years ago.
Improve this question
We have a web application that deals with some common sales entities (Contacts, Appointments, Addresses, Notes etc..). We need to keep our app, outlook, and potentially any devices that they might have synchronized.
Are there any frameworks that we can use that help us integrate with PDAs? Any thoughts or reccomendations are appreciated. Thanks.

I think that the SyncML article on Wikipedia would be a good start.
Funambol has clients for multiple platforms and the core project is free and open source.
Plaxo.com has customized a funambol Windows Mobile clients for their customers.

I would look at Microsoft Sync Framework. Whitch has many "providers" both some included, some open source, some 3rd part. A provider is a like a standardized "connection" to a datasource, like outlook mail, outlook contacts, file system, database or whatever you can imagine. Or as Microsoft says:
Microsoft Sync Framework is a
comprehensive synchronization platform
that enables collaboration and offline
access for applications, services and
devices. It features technologies and
tools that enable roaming, sharing,
and taking data offline. Using
Microsoft Sync Framework, developers
can build sync ecosystems that
integrate any application, with any
data from any store using any protocol
over any network.
A key aspect of the Microsoft Sync
Framework is the ability to create
custom synchronization providers. A
provider is a software component that
represents a replica for
synchronization. A replica is a
particular repository of information
to be synchronized, such as a file
system on a handheld device. When
representing a data source, a provider
enumerates changes from its replica.
When representing a destination, a
provider applies changes to its
replica. If the data at the source and
destination differ in type or schema,
each provider performs any necessary
mapping or transformation.
Microsoft Sync Framework home page:
http://msdn.microsoft.com/en-us/sync/default.aspx
Introduction:
http://msdn.microsoft.com/en-us/sync/bb821992.aspx
Contact Synchronization Sample - Outlook Sync
This sample shows how custom providers can be created to synchronize content between disparate data sources. In this sample we will synchronize Contacts between Microsoft Outlook, Vista Contacts and VCard files. A key aspect of this demo is the data mapping capabilities which enables disparate data sources and data types to be mapped appropriately through the Sync Framework:
http://code.msdn.microsoft.com/Release/ProjectReleases.aspx?ProjectName=sync&ReleaseId=613
Microsoft Sync Framework v1.0 CTP1 - Devices
Managed (.NET Compact Framework) and unmanaged/native (ARM)
Supported platforms are Windows Mobile 5 and 6 (ARM processors only in CTP1)
http://www.microsoft.com/downloads/details.aspx?FamilyID=a7c01a89-9af8-4eee-ab04-6a3ad098a03f&DisplayLang=en

I've done this with the Microsoft .NET Compact Framework and had excellent results. SQLCE can provide local storage on the PDA. Syncing can be performed either with custom code over web services or using something like SQL Server Replication.
Another strategy would be to design a second web portal with a UI that is specifically targeting mobile devices with small screens. Smart phone-based users could access the mobile portal with any web browser. This might be the most cost effecive solution.

Related

What are Cloud Computing Applications? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 9 years ago.
Improve this question
So I've been studying Cloud Computing lately and I'm trying to wrap my head around the concept, since my background is mostly front-end web development.
I've gone over most of the Service Models and abstract computing services, but I still don't see the bigger picture I guess.
I'm having trouble understanding what exactly is a Cloud Application. Is it just a website hosted by a huge datacenter? Can I only access Cloud Application through a web browser then? And is it possible to have a desktop application 'running' in the cloud? If so, what kind of code is running in the cloud?
I just can't seem to find clear explanations on those questions.
I guess it's all still foggy to me, so I hope anyone can help me out! Thanks!
Cloud use service model : IaaS (Infrastructure as a service) , PaaS(Platform as a service) , SaaS (Software as a service ).
Simple example that use cloud is : Microsoft Azure , Amazon's Ec2 , google drive
Cloud is only application that provide user infrastructure , platform or software online with user-defined requirement and is scalable . that is maintained and upgraded by cloud provider.
user have to pay only for what they are using.
Your Answers :
--> Is it just a website hosted by a huge datacenter?
A. No , it is not website. it is service that enable user to store data , work with software online.
--> Can I only access Cloud Application through a web browser then?
A. Most probably you can use through web browser.
--> Is it possible to have a desktop application 'running' in the cloud? If so, what kind of code is running in the cloud?
A. Yes , the applications that run on cloud also contain desktop application. E.g , word editor or photo editor is desktop application and if you need for your cloud that then cloud provider provide you that application for you.
I recommend you to take a look at the different service models that you could have on the cloud. Specially, I would read carefully the Infrastructure as a service (IaaS) and Platform as a service (PaaS) concepts.
Briefely, when you have your application and you would like to deploy it on the cloud you should choose between different models.
Iaas. Where you have an Infrastructure as a Service. It means that you a re renting a physical machine in a specific datacenter that you can choose. You have the possibility to install several Operative System where you can start installing, for example, your Tomcat Java container, your MySQL database. Please, note that you don't need any infrastructure on your end but you still need to install/configure/maintain all the software. This is the Amazon EC2 model.
PaaS. They provide a service on the top of an IaaS where you are renting an infrastructure but you have also a lot of services preconfigured so you DON'T need to install Tomcat, MySQL,.. You have Tomcat as a Service, MySQL as a Service, PostgreSQL as a Service. With this model you don't to install anything, you have your application and you just deploy your app on the container that you would like. You can take a look at this video which shows you on a graphical way how to deploy your application on a PaaS so you can see the differencen with an IaaS.

Local database storage for WinRT/Metro applications [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
I am trying to find an API within WinRT that will allow me to create a local database that can be used to store data for an occasionally connected application. I am looking for something like SQL Compact Edition.
I have seen various messages on various boards indicating that there either
(a) will be no local databases whatsoever
(b) no local "server" databases (i.e. SQL Express type instances)
(c) A local database code named "Jet Blue".
Does anybody have a definitive answer to this? I do not want to start down this road if it is blocked.
SQLite is now officially supported. See Tim Heuer's blog for details. For simpler solution with less data you can use http://winrtdatabase.codeplex.com/
You might want to have a look at SQLite3-WinRT, a wrapper for SQLite that we wrote to use it in a Metro-style application. It contains a version of SQLite that uses only WinRT-compatible API, and a WinRT component to use it in C# and JavaScript apps.
There is no SQL CE available for Metro.
a) will be no local databases whatsoever
This is not true. SQLite should be able to run on WinRT. You can download the code here and include the two main files into your WinRT project. To compile and pass certification you will need to make sure you are using the correct WinRT replacement calls for the Win32 calls that are not supported. The 3rd party solution Bob mentioned is a WinRT wrapper it doesn't include changes to SQLite to pass certification.
(b) no local "server" databases (i.e. SQL Express type instances)
It seems unlikely there will be SQL Express for metro.
(c) A local database code named "Jet Blue".
If you mean Microsoft Jet Database engine, yes that seems to be supported but I would rather use SQLite.
Also remember if you are using HTML/JS you have the option of using IndexedDB
There is no (built in) database according to this
http://channel9.msdn.com/Events/BUILD/BUILD2011/TOOL-930C
There are 3rd party solutions coming out or are already out. CodePlex has one -- http://sqlwinrt.codeplex.com/
The other option, which requires some work on your part, is to proxy your database access through a web service.
Do you really need a "store data for an occasionally connected application"? This sounds a little overkill to me. Why not serialize the data (various options) to storage yourself?

Alternative for Access+SQL Server for enterprise projects

We're a small software company, developing projects for manufacturing facilities about analysis, traceability, reporting etc. We're using Access for front end, SQL Server for back end. We've quite big customers too and our company is growing. So far it is working fine but I wonder should we move to more influential technologies, such as web based solutions. What do you think about the future of Access?
Well, keep in mind that Access now has a web option. This option works with SharePoint and the new upcoming office 365. Here is a video of an Access application and note how at the half way point I switch to running the application 100% in a web browser. No ActiveX or Silverlight is required. I even tested and run the application on my iPad.
Video here:
http://www.youtube.com/watch?v=AU4mH0jPntI
And Access 2010 also has baked in support for the Azure (cloud) edition of SQL server.
So, we have web based options, cloud based options, and there been significant investments into Access for 2010.
You could have a look at these questions:
MS Access as Enterprise Software?
and
What are the appropriate uses for MS Access?
Here we have a central SQL Server database, with both an MS-Access and a Web client interface. MS-Access is history (we started it 5 years ago) and Web is trendy (less than one year old). I must admit that MS Access is still very very efficient and cheap, once you have resolved some MS access specific problems, to which you might find answers here:
Working with multiple programmers on MS Access
How do you use version control with Access development?
Best way to test a MS Access application?
MS-Access, VBA and error handling
You can always use VB.NET Express. It's free, and Microsoft's licensing should still allow you to sell apps created with it (they did with Express 2005).
UPDATE: Access 2013 has better support for web apps than previous versions, and the apps use SQL Server or SQL Azure under the hood by default. So be sure to thoroughly evaluate the latest version of Access before concluding that you need something else.
A very good alternative to Access with similar features is Lightswitch. Here's a quote from MSDN:
Visual Studio LightSwitch is a development environment designed to simplify and shorten the development of businesses applications and data services. LightSwitch makes it easy to create data-centric business applications that can consume a variety of data sources and create clients that can run on a variety of devices.
While Access now has a web option as #AlbertDKallal mentioned (and which is still worth considering as one option), creating an HTML 5 app is the whole focus of Lightswitch. (Note: the original version of Lightswitch required Silverlight, but the newer versions create HTML5 apps that don't require any plugins.) The app will also be more extensible, since it's a .NET app, and for things that require custom programming you can program in C# or Visual Basic rather than VBA.
I should mention at this point that I haven't actually tried Lightswitch yet (!) - I'm currently evaluating it and these are the features that look attractive to me compared to Access. If anyone reading this in the future is curious about what my experience with it was like, feel free to write a comment to remind me.
For some introductory info, see these links:
Showcase Video
Is Visual Studio LightSwitch the New Access?
(Note that this article is about a the original version of LightSwitch, not the latest version.)
And...for a completely different cloud-based option, check out:
https://www.parasql.com/

Free cross-platform tools for web development [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 3 years ago.
Improve this question
This question is geared towards a group of newly hired developers that need to adopt into a minimal learning curve, maximum development/programming/management effort. Some of the developers have senior level experience and will be mentoring the junior developers. My question is I would like a solid set of tools that can run on any system (as they can choose what they like) but be the same for the entire group. The focus is on Mobile web (Not App) Development but are looking to venture into the Application market once the team gets up to speed with the web development.
Categories of software I need,
Web Development:
IDE (I think I'm set on Aptana stand alone version, unless someone sees something better)
Database GUI (I like DBVisualizer but I'm open to suggestions. MySQL and PostgreSQL are my options)
Code Repository (SVN, GIT, CVS ???)
Debugging tools (need server side as well as client side)
Frameworks (PHP, Ruby, Perl, jQuery, CSS framwork???)
Development Methodology (Agile, Scrum, etc...)
Workflow Documentation (Something like Visio but free)
Mobile Browser set (Firefox, Multi IE, Opera, Safari, Google Chrome) Why/Why Not???
Missing anything from the list???
App Development:
Application SDK's (iPhone,Android, Pre if it still exists)
Handset device
Anything else I might need to plan for???
For communication we are using Google Hosted Apps as well as Wave.
Code Repository: Add Mercurial - Its the only free, distributed version control system that easily runs on windows, mac, linux, etc. SVN will be the only one of those that has a friendly interface.
You'll need to plan for how to make your UI cross platform compatible. As of this writing, its quite difficult to perform a write-once interface in HTML/JS. Although state-of-compatibility is getting better, I would plan to very carefully separate your UI from your business logic because I think you'll likely need to either deploy separate versions of the UI for each device or to have unified, but very simplified, UI that works on many devices (assuming a web app).
Plan on unit test your business code to make sure it works on all of your devices. The JS engines differ, and you need to know that early in your dev process.
Plan ahead as to how to handle user input. If your users have a physical keypad, for example, they'll expect to use it. You may want a very different layout for a site targeting Blackberries with trackballs, then an iPhone or Storm that uses finger taps.
Know ahead of time which platforms you will target, and then buy those phones. If its worth doing, its worth buying the phone. As an example, my first iPhone app talked to the database. It worked fine on the simulator but I was waiting for my developer key before I could test on the device. Once on the device, I discovered that what I thought would be a 1/2 second delay was more like a 40 second delay, which forced me to totally revamp the project.
Hope this helps.
IDE - I think Eclipse (Aptana is a custom version of Eclipse) is a good choice for a cross platform and cross-language IDE. You could also look into NetBeans.
Database GUI - I haven't used many DB Visualizer's myself, so I'll pass on that one.
Source Control - I would go with GIT even if your developers haven't used it before. They will learn to like it quickly and the client tools have improved considerably in the last year or so. Check out Git Extensions for Windows and GitX for Mac.
Web Framework - This should be based on your team's experience and the requirements of your project. I would pick whatever your team feels the most comfortable with. Personally, I'm a fan of Ruby on Rails and ASP.Net MVC, but Asp.Net MVC is microsoft platform, and it seems like you want to stay open source.
Dev Methodology - Whatever your team feels comfortable with. I would say look into Agile and TDD (test driven development)
Workflow Documentation - Not sure about this one
Browser Set - Use them all. Test your applications in as many places as possible. For testing multiple versions of IE, I use IETester. Safari and some extensions for Firefox allow you to change your browser's user agent, which can be useful.

Deployment: GWT vs. Silverlight [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 4 years ago.
Improve this question
I'm in the early planning phase for a project and determining whether to use Silverlight or the Google Web Toolkit (GWT). There are obviously a lot of things to consider, but this question is specifically concerning deployment.
This application is intended for intranets; i.e. it is not a hosted website and is intended to be deployed at a customer's site. The target company size is small, so most would likely prefer to run on their pre-existing servers. The intent is not to sell the code base along with the application, so code security is a concern.
Given that:
Which is easiest to deploy?
Which is better for code security?
Which is better suited for deployment to the majority of small servers?
Both will work.
Both can be secured.
Neither place a heavy load on servers.
Use what makes more sense to the user. If I were using in Intranet application, I would probably want something that doesn't require me to download anything and runs smoothly in the browser. That makes me lean towards using the Google Web Toolkit (as long as you're comfortable with coding in Java).
If you think your users will be able to and ok with downloading Silverlight and you're a MS developer, go for it. The only downside is that your users have to download and install a runtime AND you might be using more internal bandwidth.
It mainly depends on what technologies you are familiar with. If you are a .Net shop, it just makes so much sense. Silverlight is compiled to XAP and is deployed on windows servers. Make sure you register the file extension of XAP in IIS. A XAP file is a Silverlight package that contains everything you need to deploy your Silverlight application, including the application manifest, the project assembly, and any other assemblies that your application uses
A major side effect of the Silverlight compilation model is the IL code can be easily decompiled or reverse engineered, Hence it is not an an appropriate place to store encryption keys, algorithms that are proprietary etc. If there is such needs, then design a web service that is on the server side. you can also try using obfuscation.
I would agree with what you are familiar with. Ask yourself, "What IDE am I best at?";
"What language do I know best, VB, C++, J#, C#, Java, ASP, JSP?".
What I know about either library would not give you much help but I have used them both.(just playing with samples).
I do know that GWT will take java classes and create a nocache.js file that your web page uses. I have not tried GWT with Silverlight although I did see this on the way here:
http://www.ongwt.com/post/2007/12/08/GWT-will-support-Silverlight
Is caching an issue? What classes does you system already support?
Both technologies are of an AJAX base. MS does it for Windows servers. Others use Open Source servers. What do use?

Resources