What technologies are used for WYSIWYG layout/design/personalized webpage apps? - language-agnostic

I'm trying to figure out the different skills and technologies necessary to develop webpage personalization apps that allow users to input and edit text/images/links on a webpage. About.me and Flavors.me would be the most advanced examples of what I'm talking about. Thanks in advance for any guidance.

#tim, they're database driven apps. The user enters information into a database (or Facebook profile, etc) and it's then pulled back out via a scripting language and presented on the page. The page layout is also stored in a DB and brought together with the user's profile information for what becomes the page layout you see. About.me seems to take it a step further by creating an email account that's tied to the user account.
Technology-wise, just about any back-end language could be used. Facebook is written in PHP, though they have a language-agnostic API that could be talked to from .net, java, php, etc. You'll need a database, and that probably would either be MySQL, Sql Server or Postgres, though there are certainly others. Finally you'd probably want to make use of the API's I spoke about including Facebook, Google, LinkedIn, etc. to aggregate information the user already has entered in different locations.
Examples of this type of site are varied and all over. Mint.com does it for financials. Grooveshark will tie into facebook and others to communicate and share your music collection. Linked in will tie into others as well. Integration is actually a very lucrative segment of the programming business right now. An app that talks to others has good marketable value.

Related

How to database iOS app data and display it on a webpage

First time post here, so forgive me for any bad etiquette/format.
I will preface by saying:
I have (over the last few months) been developing an iOS app for work. To be more specific, I am developing an inventory app to track bar inventory (liquor, beer, wine, etc). I can give more specifics on request if needed. I have most of the functionality done, only a couple more things I would like to implement. Eventually I will be porting it to Android as well.
At the moment, I have the model objects being archived to the local filesystem for saving and loading of data. However, my goal would be to database the model objects with the ability to display the information on a webpage. My logic is that no matter where the user is, he/she will be able to sign in to a service using a username and password, and view correctly formatted current/past inventories online. This is to allow the ability for a bartender to record the inventory, and have the bar manager view the inventory instances without having to have the physical device that recorded the inventory in his/her possession.
So here is my question:
Without being too general, what kind of service would I need to pull this off? I have a good amount of relevant front-end experience, specifically with iOS, Objective-C, HTML and CSS. However, I have ZERO experience on the back-end. I have researched around the internet, and I am aware of things such as cloud databases, web hosting and MySQL, etc. However, I cannot seem to find a definitive answer without asking my specific question. I suppose I would just like to be pointed in the right direction before investing money and time into a service that may prove useless to my cause.
Any resources and help would be greatly appreciated. Thank you!
There's not a definitive answer and you have a lot of options.
For me, the simplest is to set up a server with a database incorporated (mysql for example) and with a web service (written in PHP for example) that manages the database and queries on that.
Online you can find tons of guide on how to write a script in PHP that manages a database:
http://www.freewebmasterhelp.com/tutorials/phpmysql/2
For the iOS part you can follow also this guide:
http://www.techrepublic.com/blog/software-engineer/create-your-own-web-service-for-an-ios-app-part-one/
Good luck!

How to build a programmable website?

I'm developing pretty normal, non-brilliant Web 2.0 applications, like blogs, forums, social networks, etc.
APIs, mashups, greasemonkey-like works are okay for developers. But for end-users, my websites can't provide something more than a-gazillion-paper magazine. I want my users to create their own program logic to create information, access to data and communicate each other based on their own way.
The most advanced programmability on the websites are all about "Show 20 results per page", moving GUI elements around or changing colors of design.
Is there a study or do you have an idea to make websites allow their users to manipulate/create application logic, data structure, access methods both in client-side and server-side easily?
Thanks!
Please accept my apologizes for poor English, I'm not a native speaker.
Short answer, no. Long answer, not yet but this is probably a long term goal of web development overall. There are some "build your own web apps" web apps around but none of them go much beyond your simple description.
The most useful thing I have come across is something called pyjsglade:
http://sourceforge.net/projects/pyjsglade/
Which lets someone build a web gui in an IDE which then automagically turns into a webpage with full AJAX capabilities. It doesn't do everything you want but it's worth a look certainly.

Is Extended permission in Facebook need to be record by developer?

I am developing a Flash-based application for Facebook. I read many comment that the application need to pop-up dialog for user to decide to extend their permission.
The question is, who will record those decision? Facebook or the developer? because it might be a problem if user is asking the court for their privacy.
Teerasej, I can't clearly understand what your question is about, but I'll do my best to answer. Please consider clarifying what you mean, so that people will have a better chance of helping you out.
Firstly, if I understand correctly, you're writing an application that works within Facebook, providing some service for the users.
Now, when you must ask the user to grant permission to the application to do something, I believe that call must be handled within Facebook, not in your application. In the Facebook Developer wiki, you can see that the calls to prompt a user for extended permissions are handled by the Facebook platform itself. Here's the section that explains how to do this: http://wiki.developers.facebook.com/index.php/Extended_permissions#Prompting_Users_to_Grant_Extended_Permissions.
It would appear that these calls work within the Facebook markup language, FBML, and possibly their other supported languages (FQL, XFBML, etc) for their appropriate uses. There is a library provided by Adobe for interfacing with Facebook, which you may find here hosted on Google Code: http://code.google.com/p/facebook-actionscript-api/. That library might be able to help you perform some of these calls natively within ActionScript.
I hope this helps.

One website, one domain, but two different technologies?

I need advice.
I inherited a website that's been around a long time. The website gets a lot of organic traffic from Google. The business and website owner is upgrading the site to make the content more manageable. At the moment, a wordpress CMS powers half the site. Physical html pages make up the remainder of the site. Here's a summary:
1) Guide section which consists of a php wordpress driven blog found at http://mysite.com/guide. Individual pages in the guide section have urls such as http://mysite.com/guide/4930-hello-world or http://mysite.com/guide/489-welcome-to-my-site. The business owner spent 2 months populating these pages and is reluctant to scrap it for another system.
2) E-commerce section which consists of a thousand static/physical product pages. The product pages are NOT dynamically driven and no url rewrite rules are involved. The pages have urls such as http://mysite.com/products/239123-sofa.html and http://mysite.com/products/23-office-desks.html
The owner wants to use a non-PHP ERP or CRM solutions to power the website's e-commerce section and streamline some of the business' accounting, inventory, marketing and work-flow operations.
I have never worked with ERPs or CRMs before. Some questions I have are:
1) Is it a good idea to have one website under one domain driven by two different technologies? Wordpress manages pages such as http://mysite.com/guide/4930-hello-world while a Microsoft application manages pages such as http://mysite.com/products/239123-sofa.html. As mentioned earlier, the business owner is reluctant to scrap wordpress because he put considerable effort into populating it.
2) What challenges will I experience implementing url-rewrite rules (because it's two technologies under one domain, but different sub-directories)? I need to make sure the website retains its Page Rank and SEO goodies.
3) What server configuration challanges will I experience?
I've never replaced a legacy system of this magnitude on my own before. I appreciate any advice or feedback you guys can offer. Also let me know if there's anything else I should research.
Thanks
You can think of a configuration where you have separate logical/physical back-end servers for each system. Then you can have a front-end proxy (for instance Apache with mod_proxy) serving all the requests and separating them between the different back-ends.
This will also work as an application level "firewall" protecting you from unwanted requests, since you will only forward URLs that you recognize.
With regards to #1:
Big picture, while it's tough to say with the level of detail you've specified I'd say you'll probably want to make the system homogenous: use one technology and permanently redirect the legacy pages. It'll be much more cost-effective to maintain. Port the legacy WordPress content over to a new, single system.
With regards to #2:
If you're using ASP.NET, you can write an implementation if IHttpHandler to do the URL redirection, issuing an HTTP 301 (permanently moved) so that Google knows where the content has been moved to. I'd imagine other technologies have similar capabilities.
With regards to #3:
If you're using a single technology, this issue should be alleviated.

Where can I start about designing a website

I want to design a website but I don't know from where to start.
Is there a beginners' guide to start with?
How much dedication do you hope to provide? If you merely want to design a single website, quickly and dirty, there's a plethora of open source web templates available online, with clean and basic HTML/XHTML design strategies that you could modify, and provide content for.
Such as this and that.
Alternatively, if you would like to design your own websites from scratch and have full technical knowledge in the field (the proper way). Pick up a book or two on HTML/XHTML/XML, with documentation on content management systems, php, etc.
You'd soon find that in the beginning your development would be gradual and at best, slow. If you put in sufficient effort, you would find that you get to the point where you can quickly design sites confidently, which best illuminate your content.
You should be familiar with this and this
Try this Web Design from Scratch
I understand by website you mean some kind of web-app. And by design you mean, not just the page design but the design of the web-app. First, you have to understand the anatomy of a web-app. The major components are:
Database is used to store user and application data for long term. A database provides query functionality (SQL), backup on one installation and restore on another, triggers when a data entry changes, and constraints that must be satisfied by the data tables.
Web Server, also called Http Server hosts the web application.
Web Browser such as Internet Explorer or Firefox.
When a user types a URL into the web browser, the web server forwards the URL to the corresponding web application. The web application performs the needed tasks (which may involve reading or writing into the database) and returns a new html page to the user via www.
Some components of the web application are:
Database access objects are representations of objects that encapsulate interaction with database tables.
Business Logic is the main logic of the application. Here we implement the search functionality using Lucene library, for example.
Action Handler handles a http request received from the user, for example when she types a URL or when she clicks on the "submit" button. These are Http GET and POST requests. The Action Handler uses the business logic to drive the actions.
Data view on the web brower is constructed using some template library (which usually produces javascript user interface code for the web browser). For interactivity one may use Ajax techniques.
Almost all web-apps separate the model, view and controller of a web application. The view deals with the display, the model deals with data and the controller deals with control/functioning. See http://www.uidesign.net/Articles/Papers/UsingMVCPatterninWebInter.html.
Several frameworks implement MVC. The most easy ones to get started are Ruby on Rails and Django (over which an open source social network called Pinax too is written). There are much more comprehensive frameworks and libraries in java too (for a single web appl you may need to join several of these libraries), such as spring, webwork, tapestry, lucene (for search), sitemesh (for page decoration). Many java web apps run on tomcat web server and with mysql database.
I started with http://w3schools.com. Make sure you're using Firefox and the Firebug addon. Get your hands dirty then get familiar with the web design community.
I have CSS Mastery by Andy Budd on my desk and it's a good, readable, short, yet deep guide to CSS.
Don't Make me think has also become my mantra of web design.
Overall, you're going to produce a lot of crap--as I have--before you get good. If you have someone to look over what you're doing that'll be the best help. Personal drive will matter the most in the long run though, so stick with it and keep learning.
Liz Castro has a good book too.