What Software Do You Use To Create Sitemaps / Site Structure For Large Sites? - sitemap

Just wondering what software you use to create a visual sitemap / site structure representation before you start big sites?
I am looking to map out a large site, but cannot find any good software to help me map the site visually (And in pages/categories)..

Maybe SketchFlow http://electricbeach.org/?p=145 ? which is included in the Expression Blend Trial http://www.microsoft.com/downloads/details.aspx?FamilyID=92E1DB7A-5D36-449B-8C6B-D25F078F3609&displaylang=en

I strongly suggest taking a look at this tool: http://www.balsamiq.com/products/mockups
The Balsamiq tool is the best for doing mockups (i assume this is what you are referring too when talking about sitemaps before you start...). With this software you can quickly generate a working wireframe of what ever you are creating. So much functionality that you can actually share it with your client to get some good sign offs prior to typing the first bit of code.
Very powerful!
And the other one...just shown at the last MIX09 is SketchFlow. Couldn't remember it to save my life. This is a WAY COOL tool for site maps and UI mock up. I was trying to find you the actual MIX presentation as it is super cool to watch. But here are some YouTube videos of that presentation from a user perspective I guess.
http://www.youtube.com/watch?v=zsAZjb7FKXA
http://www.youtube.com/watch?v=f3ErrS68YMM
Check it out!
update...found the SketchFlow video!!! http://videos.visitmix.com/MIX09/C01F
Great keynote from there too: http://videos.visitmix.com/MIX09/KEY01

I know this is an old question, but for others who find this via search, I personally love mocking my websites up with mind mapping tools. I've tried several but my favorite was MindNode for Mac and Xmind for Windows.
XMind free download:
http://www.xmind.net/
MindNode free download:
https://mindnode.com/
I've also tried MindMeister which works just as well as other mind mapping tools and is hosted for you so you can access your mind maps anywhere. However, MindMeister only allows you three maps (currently) without upgrading to a paid subscription.
Another that I've worked with is mockflow.com which is great for mocking up websites with all their features and buttons and even making clickable navigation. They have a free version, but again it's very limited without upgrading to a paid version.

I'm using Slickplan. This cloud based app allows me to have access to my projects from different machines regardless of their operating systems. All I need is one of the leading web browsers (Chrome, Firefox, Safari).
With Slickplan you can create visual sitemaps from scratch or you can use Site Crawler to import your existing website to visualize and reorganize its structure.
Of course you can always export your projects to the XML format, and use the exported file to create pages and menu systems inside some popular content management system - Slickplan provides plugins for WordPress, Joomla, concrete5 and a few more.

Related

Edit pages content through a UI

Sorry if someone already did this question, but I couldn't find it. I want to allow my client to edit the website pages content through a UI, not using notepad++ or something like that, you know? Like edit the FAQ or add some new product to his store. I don't know how to search it. I already looked for admin dashboard templates, but nothing...
If I'm not mistaken, you want a CMS (Content Management System). This would allow you to run a website with an editor and many other tools to help you and your clients out with development. Popular CMS's even have large libraries of plugins to customize and add virtually anything to the development environment. Popular CMS's include:
WordPress
Drupal
Joomla
ModX
etc.
You can even develop your own via PHP and MySQL databasing. Not only does this allow you to have the tools tailored to your needs, but it's also a great learning experience.
If you're looking for just a sort of online IDE (Integrated Development Environment), then Cloud9 may suit your needs, but it can get pricy depending on what you need: https://c9.io/
Overall, if you're dealing with dozens of HTML documents on a website, it can get messy and the need to switch to templating is an absolute necessity. CMS's are easy to install and have a lot of features, but they can be very bulky. So if you're just looking for a simple management system, I think PHP and MySQL would be best for your scenario. If that's all you want then here are some articles to get you started:
https://css-tricks.com/php-for-beginners-building-your-first-simple-cms/
http://www.elated.com/articles/cms-in-an-afternoon-php-mysql/
http://www.smashingmagazine.com/2011/10/getting-started-with-php-templating/

Desktop app vs. Web app development differences and similarities

Forgive me if there is vagueness in this question. In a nutshell, I've built websites for several years, working with PHP, Javascript, JSON, AJAX, HTML, CSS3 and ASP-(many years ago when I didn't know better).
Lately I'm coming across projects where the clients prefer the app on their desktop (offline) rather than on the web.
Is it going to be a long road ahead to learn this? I can't get my head wrapped around going from web to desktop. Could someone give me a 50,000 ft overview of what I need to research? No details needed.. just an overall approach.
Are there packages out there I should read into which give tools for running a system "offline" so to speak? I'm not sure of there terminology or even where to start.
One of the main reasons is that features like Imagemagick seems too slow to process images online. The client would like tool where they don't have to rely on the speed of internet. Go Daddy is useless when it comes to upgrading their tools and I hope to do a standalone system for image processing.
Also, I'd like to get into making desktop widgets like time tracking tools, or anything that can be self-contained and running from a downloaded program that I would create.
Is this a really bad idea?
Try Auto it, it has a tiny foot print and it is great for writing small tools. It does have an GUI editor.
example of auto it widget
auto it widget
Other than that you could use industrial strength Microsoft Developer studios for either VB or C# . You can even do apps in VBA excel.

Web technologies in GUI apps

What's your experience in using web technologies (HTML, XML, CSS, JavaScript) to implement part of the functionality of a GUI application? Pros and cons, please.
No servers, relational databases, AJAX, or cookies for session management, nor an existing webapp either, but rather a GUI app that uses web widgets (like Qt WebKit) to render and handle substantial parts of the UI, while taking advantage of a GUI framework to achieve an even richer interaction and better desktop integration.
I've already validated that the approach is possible using PyQt. Content can be rendered from the file system or from strings, and URL requests (images or clicks) can be captured and served by the form's event handlers. CSS and JavaScript are supported, perhaps with some limitations.
# ...
self.webView.page().setLinkDelegationPolicy(
QtWebKit.QWebPage.DelegateExternalLinks
)
#...
class TotiMainWindow(QtGui.QMainWindow):
def linkClicked(self, url):
pass # events arrive here
Note: This question is different from this one and this one made before, among other things because there is no requirement to use web technologies on the GUI, but there is the requirement that the application should work without a network connection available, and should integrate well with the default desktop over different platforms, without previous infrastructure requirements (no .NET, Java, browsers, or database servers).
Note: I posted a different version of this question on PMS but found very little experience with this approach there.
Closing Note
I just found most of the information I was looking for in a series of blog posts by André Pareis.
I think the largest advantage to using web markup like HTML/CSS and other web technologies is that desktop apps may very well have their days numbered.
As we speak, Google engineers are working on the Chromium OS, which essentially consists of a single GUI application... the browser...
Now, while nothing may never actually come of it, there is clearly a rising trend in the number of applications accessible through a web browser, accessible anywhere. It seems to me that this is the future of application development.
By using these technologies, this becomes one less headache you have to deal with when or if you determine that your app should be available as a web application.
Update: A few years ago, we developed an Agent Desktop for our call center that is essentially a local application that opens sockets to integrate with the phone system. The user interface the agents use is built with HTML, CSS, and JavaScript, and the experience is stunning. When we released our latest update in 2010 with a professional CSS redesign, our agents were all very impressed with not only how easy it was to interact but also how easy it was to use.
In the future we will port this 100% to the browser, but for now it needs to be a local application because of the COM integration with the phone system.
We did exactly this for a project back when Windows XP was new.
This gave my team several benefits:
A good-looking UI with relatively little effort
Easily change the style of the UI in a consistent manner using CSS
Relatively simple integration with C++ (invoking functions from the ui and vice versa)
The drawbacks we saw were:
Some not-so-good firewalls considered accessing internal resources (ie other html pages in the ui) to be a web request
Adding and accessing the needed resources could in some cases be a bit cumbersome
It was possible set properties in Internet Explorer that would prevent JS from running in the application
Note that some of Windows XP:s programs are using this approach.
This probably works best with small, more Wizard-like parts of the ui (which our ui consisted almost entirely of).
I have since then not really been involved in ui projects, so I cannot really tell you whether this approach is still valid... I know that MFC-based applications will let you use HTML-based dialogs though.
In a similar situation in 2005 I created a stand-alone webapp using XForms, CSS, JavaScript, XML and XML Schema for offline data retrieval and verification. With a good XForms -> HTML + JS transformer (Chiba) it did the job with no bug fixes after the initial release. It was used for 6-12 months (IIRC) by about a dozen engineers for a project gathering test data in the tunnel of the Large Hadron Collider. The biggest surprise of that project was just how much you get for free when going for a web platform, even for offline use. Highly recommended.
The major problem is that it reduces your development speed, or the quality of your user interface. A lot. Unless you're using Seaside, it is much faster to develop a desktop app.
There is quite some number of applications built on top of Mozilla platform. It isn't 100% web technology, as instead of HTML you use XML based XUL, but the rest is indeed web stack (JavaScript, CSS). The most successful of these it the OpenKomodo and it's commercial big brother Komodo IDE.
On the other hand, as far as Qt goes, the newest version 4.7 you can build GUI using QML language. Don't let the name mislead you, it's not markup, it acctually JavaScript with app-specific extensions.

Editor for end user documentation in C# WinForm app

I'm developing a WinForm app in c# 4.0 and would like other (non-developer) colleagues to contribute writing a context sensitive end-user helpfile. First I thought I could use "HTML Help Workshop" from Microsoft, but it seems outdated (Vista and Windows 7 not supported).
Then I've looked at Sandcastle, but the documentation is lacking and I wonder if it is suitable for non-technical users to write end-user documentation.
So I read about RoboHelp, but it's way to expensive for me.
I'm getting lost in all the information that is available about helpfiles. Can someone help give some best practices or information on what tools to use and what output format I should target (still chm or other).
Great question. I like your idea of non-developers contributing to the end-user documentation.
This idea might motivate users and testers of your application to easily contribute to the documentation.
The first thing that comes to my mind, is using a some sort of wiki engine. You could build a simple function in your WinForm application, that fires up a browser and directs in to the wiki. You could use the context from which it is called to build up an url; e.g. http://dev-wiki.mycompany.com/LoginForm?action=edit. Here the name of the form ("LoginForm") is used in the url of a wiki page.
Alternatively, you could simply use the embedded web browser control for WinForms to access the wiki. That would look something like:
var url = GetWikiUrl(myForm);
browserControl.Navigate(url);
This would be very easy to embed in your application.
In a controlled (office) environment, this would be very easy to set up. In you production environment it might be a bit more difficult, but still doable. It might leverage some end-user contributions too.
For writing documentation, I use sphinx.
It lets you document in plain text and has various output formats (chm, html, pdf etc.).
Some of these (chm, html) can be used as context-sensitive help sources.
However simple, the sphinx user-interface (text editor and make file) might not be suitable for non-technical users.
I would recommend to use Help+Manual for creating CHM documentation. It's similar to MS Word and any PC user can start to contribute doc development after short education.
But this tool isn't free :(

Are there any good drag&drop web app IDEs out there that support AJAX?

Can anyone recommend a GUI builder tool for creating DHTML web apps using AJAX to communicate with a web service backend? I'd like to avoid having to mess around with designing HTML, marshalling/unmarshalling data, checking for browser compatibility, etc. The tool should have a library of widgets that can be put into an application and hooked up to functionality, and be extensible enough to be able to define custom widgets. Of course free and/or open source is preferrable but I would consider proprietary tools too.
Also to what extent does the choice of GUI tool affect what platform or language I would use for the backend? If the GUI is just calling a web service then I should be able to use anything on the server-side to provide that interface but maybe some gui-side tools use a proprietary data exchange format that requires some specific server-side code?
Edit: I don't need a widget that can be dragged, I want an IDE that allows one to build a gui easily (i.e. a RAD tool).
WaveMaker is open source, runs on J2EE.
If you're comfortable with Java, maybe you could try Google Web Toolkit? http://code.google.com/webtoolkit/
I'm using Wavemaker and it does exactly what are u asking...
It is really easy to use and very perfomant....
I believe Dreamweaver does some of this, but in my opinion such editors are not a good idea. They produce horrible, unmaintainable server-side code and are quite inflexible.
Wavemaker beats everything else I have used hands down. Applications can be developed rapidly, has drag and drop, can connect to any web service, and has unmatched database management tools. The only problem with it is that it has kept changing hands/ownership so much and its future direction is not clear.
Delphi for PHP from Codegear has some of this capability, but I would agree with ceejayoz that such tools don't necessarily make for nice code.
On Dan's suggestion I took a look at GWT. I'd heard of it before but never looked at it that closely and it seems pretty interesting. Certainly it takes away the annoyance of pixel pushing and making things work in multiple browsers. I also tried searching for "gwt rad tools" and came up with a couple of results:
Instantiations GWT Designer (commercial, $59/year)
Wirelexsoft Vistafei (still in beta but will have a free and a commercial version)
I'll take a look at these but if anyone's used something else let me know.

Resources