SlideShare uma empresa Scribd logo
1 de 3
Dreamwares Recent Projects
Our recent projects include:
Online editor using Google App Engine + Python
A famous VC from Australia wanted to build to build an online editor using Google App
Engine(GAE) and Python. The desirable features included:
1. Create, edit documents online.
2. Share the documents / folders with friends.
3. Allow various kinds of sharing rights.
4. Maintaining various versions of the documents and being able to restore an earlier version.
5. Creating documents before logging in and saving after logging in.
6. Support Google account login as well as own registration.
The entire application was built by our team and is almost completed now. Some of the key challenges
that were overcome include:
1. The administrator wanted to be able to modify all the static files and images, header and
footer from the backend. However, GAE does not allow the scripts to write on the file
system. So one cannot create / edit a file through code in GAE. So a special architecture was
created which solved this problem and allowed the administrator to upload, edit and delete
all such files.
2. Client wanted to use TinyMCE as the editor and provide file and image managers so that
users can insert existing documents and images in the new ones. Existing file and image
managers of TinyMCE are designed to work with usual file systems, which does not exist in
case of GAE. All the documents and images were stored in database. Also no such plugin
was available for python. So we created special file and image managers for TinyMCE, in
python, that could work with GAE datastore.
Digital Content Management System using Amazon Web Services
(PHP)
A Rich Media Distribution company wanted to build a complete digital content management
system for tour operators and distributors. The system would allow them to manage all their digital
content, i.e. images, brochures, videos, from one place. They system would allow the users to:
1. Upload images, brochures and videos and manage them.
2. Create galleries using their as well other’s content.
3. Embed their galleries in their websites.
4. Manage their content from client portal as well as their own portal.
5. Geo-tag their content.
6. Add logos and watermarks to videos.
7. Customize the appearance of galleries, slideshows and video player.
8. Display their brochures as flip books.
This project presented some unique challenges which were overcome by us:
1. Users could upload videos upto 2 GB in size. Each video was converted to different forms for
preview, streaming and download. Since user cannot be kept engaged for so much time, all
the processing was done behind the scene. Queue was used for parallel processing. Strong
measures for taken to make the system robust.
2. The EC2 instance used for video processing was dynamically loaded and shut down when all
the processing was done. Since different uploads from different users were supposed to use
the same instance, the status of processing was shared between the instance and the
controlling server.
3. Users should be able to directly upload / download files from S3. However, unauthenticated
access to the same had to be prevented.
Bulk Processing on Microsoft Azure
One of our clients, who earlier owned an INC 500 company, came up with an innovative product
that offered us many challenges. Similar to the Digital Content Management system, this required lot of
background processing. However, this time the challenges were more related to Azure:
1. Some part of the background processing required using a Win32 native DLL. This is not
directly supported by Azure. After lot of efforts, we reached close to the solution but still
could not get it running due to lack of documentation in this regards. Finally some
developers from Microsoft guided us and we succeeded in getting this running.
2. Azure offers a storage called Blob to store big files. To store big files, we need to split the file
into chunks and upload in chunks. This is usually done by client applications installed on user
machines. But we needed to upload the files from the browser without any special software
installation (except flash). So we built a special system where the files were split into chunks
on the client system from within the browser and succeeded in uploading big files to blobs.
Salesforce & Force.com
We have the experience of customizing salesforce as per the needs of the customers. We are
also developing a Force.com app for an INC 5000 company.

Mais conteúdo relacionado

Mais procurados

Chapter 1 - The Web Becomes 2.0
Chapter 1 - The Web Becomes 2.0 Chapter 1 - The Web Becomes 2.0
Chapter 1 - The Web Becomes 2.0 kwduncan
 
IBM Connect 2016: 1402 - Getting Technically Cozy with IBM Connections Cloud ...
IBM Connect 2016: 1402 - Getting Technically Cozy with IBM Connections Cloud ...IBM Connect 2016: 1402 - Getting Technically Cozy with IBM Connections Cloud ...
IBM Connect 2016: 1402 - Getting Technically Cozy with IBM Connections Cloud ...David Simpson
 
Share point 2013 new features
Share point 2013 new featuresShare point 2013 new features
Share point 2013 new featuresjeanpaulva
 
235042632 super-shop-ee
235042632 super-shop-ee235042632 super-shop-ee
235042632 super-shop-eehomeworkping3
 
Webinar: Front End Web Development - Trendy Web Designs Using HTML5
Webinar: Front End Web Development - Trendy Web Designs Using HTML5Webinar: Front End Web Development - Trendy Web Designs Using HTML5
Webinar: Front End Web Development - Trendy Web Designs Using HTML5Edureka!
 
How to extend IBM Connections Communities and Profiles
How to extend IBM Connections Communities and ProfilesHow to extend IBM Connections Communities and Profiles
How to extend IBM Connections Communities and ProfilesIBM Connections Developers
 
Public-i User Group Presentation (June 14)
Public-i User Group Presentation (June 14)Public-i User Group Presentation (June 14)
Public-i User Group Presentation (June 14)lewieashman
 
RoboHelp 9 New Features
RoboHelp 9 New FeaturesRoboHelp 9 New Features
RoboHelp 9 New Featurestmaldous
 
IBM Connect 2014 - BP207 - Don’t Reinvent the Wheel - (Re)use Open Source Sof...
IBM Connect 2014 - BP207 - Don’t Reinvent the Wheel - (Re)use Open Source Sof...IBM Connect 2014 - BP207 - Don’t Reinvent the Wheel - (Re)use Open Source Sof...
IBM Connect 2014 - BP207 - Don’t Reinvent the Wheel - (Re)use Open Source Sof...Niklas Heidloff
 
New features at GetAccept
New features at GetAcceptNew features at GetAccept
New features at GetAcceptThomas Igou
 
XCC Benefits - Who profits from XCC?
XCC Benefits - Who profits from XCC?XCC Benefits - Who profits from XCC?
XCC Benefits - Who profits from XCC?TIMETOACT GROUP
 
Cloud Configuration Ecosystem at Intuit
Cloud Configuration Ecosystem at IntuitCloud Configuration Ecosystem at Intuit
Cloud Configuration Ecosystem at IntuitVMware Tanzu
 
Application Development for IBM Connections with IBM Bluemix
Application Development  for IBM Connections with IBM BluemixApplication Development  for IBM Connections with IBM Bluemix
Application Development for IBM Connections with IBM BluemixIBM Connections Developers
 
Application innovation & Developer Productivity
Application innovation & Developer ProductivityApplication innovation & Developer Productivity
Application innovation & Developer ProductivityKushan Lahiru Perera
 
Webinar: Microsoft .NET Framework : An IntelliSense Way of Web Development
Webinar: Microsoft .NET Framework : An IntelliSense Way of Web DevelopmentWebinar: Microsoft .NET Framework : An IntelliSense Way of Web Development
Webinar: Microsoft .NET Framework : An IntelliSense Way of Web DevelopmentEdureka!
 
SharePoint Framework -The future of SharePoint/ Office 365 developer ecosystem.
SharePoint Framework -The future of SharePoint/ Office 365 developer ecosystem. SharePoint Framework -The future of SharePoint/ Office 365 developer ecosystem.
SharePoint Framework -The future of SharePoint/ Office 365 developer ecosystem. Kushan Lahiru Perera
 
IBM Connect 2014 SHOW501 Mastering Social Development Using the IBM Collabora...
IBM Connect 2014 SHOW501 Mastering Social Development Using the IBM Collabora...IBM Connect 2014 SHOW501 Mastering Social Development Using the IBM Collabora...
IBM Connect 2014 SHOW501 Mastering Social Development Using the IBM Collabora...paulbastide
 
JMP103 : Extending Your App Arsenal With OpenSocial
JMP103 : Extending Your App Arsenal With OpenSocialJMP103 : Extending Your App Arsenal With OpenSocial
JMP103 : Extending Your App Arsenal With OpenSocialRyan Baxter
 

Mais procurados (18)

Chapter 1 - The Web Becomes 2.0
Chapter 1 - The Web Becomes 2.0 Chapter 1 - The Web Becomes 2.0
Chapter 1 - The Web Becomes 2.0
 
IBM Connect 2016: 1402 - Getting Technically Cozy with IBM Connections Cloud ...
IBM Connect 2016: 1402 - Getting Technically Cozy with IBM Connections Cloud ...IBM Connect 2016: 1402 - Getting Technically Cozy with IBM Connections Cloud ...
IBM Connect 2016: 1402 - Getting Technically Cozy with IBM Connections Cloud ...
 
Share point 2013 new features
Share point 2013 new featuresShare point 2013 new features
Share point 2013 new features
 
235042632 super-shop-ee
235042632 super-shop-ee235042632 super-shop-ee
235042632 super-shop-ee
 
Webinar: Front End Web Development - Trendy Web Designs Using HTML5
Webinar: Front End Web Development - Trendy Web Designs Using HTML5Webinar: Front End Web Development - Trendy Web Designs Using HTML5
Webinar: Front End Web Development - Trendy Web Designs Using HTML5
 
How to extend IBM Connections Communities and Profiles
How to extend IBM Connections Communities and ProfilesHow to extend IBM Connections Communities and Profiles
How to extend IBM Connections Communities and Profiles
 
Public-i User Group Presentation (June 14)
Public-i User Group Presentation (June 14)Public-i User Group Presentation (June 14)
Public-i User Group Presentation (June 14)
 
RoboHelp 9 New Features
RoboHelp 9 New FeaturesRoboHelp 9 New Features
RoboHelp 9 New Features
 
IBM Connect 2014 - BP207 - Don’t Reinvent the Wheel - (Re)use Open Source Sof...
IBM Connect 2014 - BP207 - Don’t Reinvent the Wheel - (Re)use Open Source Sof...IBM Connect 2014 - BP207 - Don’t Reinvent the Wheel - (Re)use Open Source Sof...
IBM Connect 2014 - BP207 - Don’t Reinvent the Wheel - (Re)use Open Source Sof...
 
New features at GetAccept
New features at GetAcceptNew features at GetAccept
New features at GetAccept
 
XCC Benefits - Who profits from XCC?
XCC Benefits - Who profits from XCC?XCC Benefits - Who profits from XCC?
XCC Benefits - Who profits from XCC?
 
Cloud Configuration Ecosystem at Intuit
Cloud Configuration Ecosystem at IntuitCloud Configuration Ecosystem at Intuit
Cloud Configuration Ecosystem at Intuit
 
Application Development for IBM Connections with IBM Bluemix
Application Development  for IBM Connections with IBM BluemixApplication Development  for IBM Connections with IBM Bluemix
Application Development for IBM Connections with IBM Bluemix
 
Application innovation & Developer Productivity
Application innovation & Developer ProductivityApplication innovation & Developer Productivity
Application innovation & Developer Productivity
 
Webinar: Microsoft .NET Framework : An IntelliSense Way of Web Development
Webinar: Microsoft .NET Framework : An IntelliSense Way of Web DevelopmentWebinar: Microsoft .NET Framework : An IntelliSense Way of Web Development
Webinar: Microsoft .NET Framework : An IntelliSense Way of Web Development
 
SharePoint Framework -The future of SharePoint/ Office 365 developer ecosystem.
SharePoint Framework -The future of SharePoint/ Office 365 developer ecosystem. SharePoint Framework -The future of SharePoint/ Office 365 developer ecosystem.
SharePoint Framework -The future of SharePoint/ Office 365 developer ecosystem.
 
IBM Connect 2014 SHOW501 Mastering Social Development Using the IBM Collabora...
IBM Connect 2014 SHOW501 Mastering Social Development Using the IBM Collabora...IBM Connect 2014 SHOW501 Mastering Social Development Using the IBM Collabora...
IBM Connect 2014 SHOW501 Mastering Social Development Using the IBM Collabora...
 
JMP103 : Extending Your App Arsenal With OpenSocial
JMP103 : Extending Your App Arsenal With OpenSocialJMP103 : Extending Your App Arsenal With OpenSocial
JMP103 : Extending Your App Arsenal With OpenSocial
 

Semelhante a Dreamwares Recent Projects

Content Management Training
Content Management TrainingContent Management Training
Content Management Trainingguestb3bf88
 
Content Management Training
Content Management TrainingContent Management Training
Content Management TrainingNuno Nunes
 
AD101: IBM Domino Application Development Futures
AD101: IBM Domino Application Development FuturesAD101: IBM Domino Application Development Futures
AD101: IBM Domino Application Development FuturesEamon Muldoon
 
FILE SPLITTER AND JOINER
FILE SPLITTER AND JOINERFILE SPLITTER AND JOINER
FILE SPLITTER AND JOINERRajesh Roky
 
Building our Component Library
Building our Component LibraryBuilding our Component Library
Building our Component LibraryClement Ho
 
Question 4 progression
Question 4 progressionQuestion 4 progression
Question 4 progressionJoshbrison
 
Fun with Jenkins & Salesforce
Fun with Jenkins & SalesforceFun with Jenkins & Salesforce
Fun with Jenkins & SalesforceAbhinav Gupta
 
DOs and DONTs on the way to 10M users
DOs and DONTs on the way to 10M usersDOs and DONTs on the way to 10M users
DOs and DONTs on the way to 10M usersYoav Avrahami
 
EricLong_Resume_Public
EricLong_Resume_PublicEricLong_Resume_Public
EricLong_Resume_PublicEric Long
 
Pinax Long Tutorial Slides
Pinax Long Tutorial SlidesPinax Long Tutorial Slides
Pinax Long Tutorial SlidesDaniel Greenfeld
 
Building & distributing chrome extensions and web apps
Building & distributing chrome extensions and web appsBuilding & distributing chrome extensions and web apps
Building & distributing chrome extensions and web appsRoel Palmaers
 
Question 4 1st draft
Question 4 1st draftQuestion 4 1st draft
Question 4 1st draftJoshbrison
 
Project Server 2002 Implementation Lessons Learned
Project Server 2002 Implementation Lessons LearnedProject Server 2002 Implementation Lessons Learned
Project Server 2002 Implementation Lessons Learnedwebhostingguy
 
Desktop apps with node webkit
Desktop apps with node webkitDesktop apps with node webkit
Desktop apps with node webkitPaul Jensen
 
How adding a further tool can be a good thing
How adding a further tool can be a good thingHow adding a further tool can be a good thing
How adding a further tool can be a good thingBelsoft
 

Semelhante a Dreamwares Recent Projects (20)

Content Management Training
Content Management TrainingContent Management Training
Content Management Training
 
Content Management Training
Content Management TrainingContent Management Training
Content Management Training
 
Syncitall
SyncitallSyncitall
Syncitall
 
AD101: IBM Domino Application Development Futures
AD101: IBM Domino Application Development FuturesAD101: IBM Domino Application Development Futures
AD101: IBM Domino Application Development Futures
 
FILE SPLITTER AND JOINER
FILE SPLITTER AND JOINERFILE SPLITTER AND JOINER
FILE SPLITTER AND JOINER
 
Building our Component Library
Building our Component LibraryBuilding our Component Library
Building our Component Library
 
Question 4 progression
Question 4 progressionQuestion 4 progression
Question 4 progression
 
Fun with Jenkins & Salesforce
Fun with Jenkins & SalesforceFun with Jenkins & Salesforce
Fun with Jenkins & Salesforce
 
DOs and DONTs on the way to 10M users
DOs and DONTs on the way to 10M usersDOs and DONTs on the way to 10M users
DOs and DONTs on the way to 10M users
 
EricLong_Resume_Public
EricLong_Resume_PublicEricLong_Resume_Public
EricLong_Resume_Public
 
Pinax Long Tutorial Slides
Pinax Long Tutorial SlidesPinax Long Tutorial Slides
Pinax Long Tutorial Slides
 
Building & distributing chrome extensions and web apps
Building & distributing chrome extensions and web appsBuilding & distributing chrome extensions and web apps
Building & distributing chrome extensions and web apps
 
124157075 gb
124157075 gb124157075 gb
124157075 gb
 
Question 4 1st draft
Question 4 1st draftQuestion 4 1st draft
Question 4 1st draft
 
Question 4
Question 4Question 4
Question 4
 
Project Server 2002 Implementation Lessons Learned
Project Server 2002 Implementation Lessons LearnedProject Server 2002 Implementation Lessons Learned
Project Server 2002 Implementation Lessons Learned
 
Desktop apps with node webkit
Desktop apps with node webkitDesktop apps with node webkit
Desktop apps with node webkit
 
Presentation
PresentationPresentation
Presentation
 
Browsers-sabina ramirez
Browsers-sabina ramirezBrowsers-sabina ramirez
Browsers-sabina ramirez
 
How adding a further tool can be a good thing
How adding a further tool can be a good thingHow adding a further tool can be a good thing
How adding a further tool can be a good thing
 

Último

TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 

Último (20)

TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 

Dreamwares Recent Projects

  • 1. Dreamwares Recent Projects Our recent projects include: Online editor using Google App Engine + Python A famous VC from Australia wanted to build to build an online editor using Google App Engine(GAE) and Python. The desirable features included: 1. Create, edit documents online. 2. Share the documents / folders with friends. 3. Allow various kinds of sharing rights. 4. Maintaining various versions of the documents and being able to restore an earlier version. 5. Creating documents before logging in and saving after logging in. 6. Support Google account login as well as own registration. The entire application was built by our team and is almost completed now. Some of the key challenges that were overcome include: 1. The administrator wanted to be able to modify all the static files and images, header and footer from the backend. However, GAE does not allow the scripts to write on the file system. So one cannot create / edit a file through code in GAE. So a special architecture was created which solved this problem and allowed the administrator to upload, edit and delete all such files. 2. Client wanted to use TinyMCE as the editor and provide file and image managers so that users can insert existing documents and images in the new ones. Existing file and image managers of TinyMCE are designed to work with usual file systems, which does not exist in case of GAE. All the documents and images were stored in database. Also no such plugin was available for python. So we created special file and image managers for TinyMCE, in python, that could work with GAE datastore. Digital Content Management System using Amazon Web Services (PHP)
  • 2. A Rich Media Distribution company wanted to build a complete digital content management system for tour operators and distributors. The system would allow them to manage all their digital content, i.e. images, brochures, videos, from one place. They system would allow the users to: 1. Upload images, brochures and videos and manage them. 2. Create galleries using their as well other’s content. 3. Embed their galleries in their websites. 4. Manage their content from client portal as well as their own portal. 5. Geo-tag their content. 6. Add logos and watermarks to videos. 7. Customize the appearance of galleries, slideshows and video player. 8. Display their brochures as flip books. This project presented some unique challenges which were overcome by us: 1. Users could upload videos upto 2 GB in size. Each video was converted to different forms for preview, streaming and download. Since user cannot be kept engaged for so much time, all the processing was done behind the scene. Queue was used for parallel processing. Strong measures for taken to make the system robust. 2. The EC2 instance used for video processing was dynamically loaded and shut down when all the processing was done. Since different uploads from different users were supposed to use the same instance, the status of processing was shared between the instance and the controlling server. 3. Users should be able to directly upload / download files from S3. However, unauthenticated access to the same had to be prevented. Bulk Processing on Microsoft Azure One of our clients, who earlier owned an INC 500 company, came up with an innovative product that offered us many challenges. Similar to the Digital Content Management system, this required lot of background processing. However, this time the challenges were more related to Azure: 1. Some part of the background processing required using a Win32 native DLL. This is not directly supported by Azure. After lot of efforts, we reached close to the solution but still could not get it running due to lack of documentation in this regards. Finally some developers from Microsoft guided us and we succeeded in getting this running.
  • 3. 2. Azure offers a storage called Blob to store big files. To store big files, we need to split the file into chunks and upload in chunks. This is usually done by client applications installed on user machines. But we needed to upload the files from the browser without any special software installation (except flash). So we built a special system where the files were split into chunks on the client system from within the browser and succeeded in uploading big files to blobs. Salesforce & Force.com We have the experience of customizing salesforce as per the needs of the customers. We are also developing a Force.com app for an INC 5000 company.