Monday, October 20, 2014

Quickly Access Chrome Hidden Settings

Awesome options hidden from view

Chrome has some very interesting hidden options if you know where to look, some of the pages only accessible via a direct url link. One of the things I find myself doing fairly regularly is tweaking Chrome's settings which includes some of these hidden pages, and having to click 3 times or type a full url to access certain pages gets bothersome. So I decided to take my bookmark bar and use it for quick access to all of the configuration pages I frequent. While this is a fairly trivial task I actually don't know anyone else who has done it, so why am I doing it?

Because I can and I like it :-) Nuff said right? So lets begin.

There Be Dragons Ahead

Be aware that if you are not familiar with a setting or configuration option I mention here the please stay away from it and leave it alone, some of these configuration pages that I'm going to show you how to access contain options that can break your Chrome Browser and I am not offering any help if that is what you do. Most of these Google has chosen to hide to prevent that very thing from occurring. Again you do not need access to many of these pages, I have marked unsafe ones with a Dragon, so if you are unsure leave anything with a Dragon alone. Dragons are dangerous, sometimes they bite, sometimes they burn you to a crisp. Be careful.

Things of interest

Chrome takes a twist on configuration similar to what Mozilla started some years ago. While some of the configuration pages are easy to find, a few are hidden and only accessible with a special url. The pages I found especially useful for Chrome are:
  • Apps: chrome://apps/
    • Dragon: No
    • Hotkey: None
    • Path: New Tab > 9 Square Button in upper right
    • What is it: All of the Chrome Apps you have installed.
  • Bookmarks: chrome://bookmarks/
    • Dragon: No
    • Hotkey: [ Mac: ⌥⌘B ] [ Win: ⌃⇧O ]
    • Path: Menu > Bookmarks > Bookmarks Manager
    • What is it: Where you can manage your bookmarks.
  • Plugins: chrome://plugins/
    • Dragon: Yes
    • Hotkey: None
    • Path: Address Bar > Type URL
    • What is it: Where you can view and modify hidden plugin settings Flash/Java etc.
  • Extensions: chrome://extensions/
    • Dragon: No
    • Hotkey: None
    • Path: Menu > Settings > Extensions
    • What is it: All of the extensions you have installed, links for removal and options.
  • Settings: chrome://settings/
    • Dragon: No
    • Hotkey: [ Mac: ⌘, ] [ Win: None? ]
    • Path: Menu > Settings
    • What is it: The settings page where you can configure many of the options in Chrome.
  • History: chrome://history/
    • Dragon: No
    • Hotkey: [ Mac: ⌘Y ] [ Win: ⌃H ]
    • Path: Menu > Settings
    • What is it: Your full history as far back as it is saved.
  • Experimental Flags: chrome://flags/
    • Dragon: Very Dangerous
    • Hotkey: None
    • Path: Address Bar > Type URL
    • What is it: Experimental features, you can break Chrome easily here.
  • About: chrome://help/
    • Dragon: No
    • Hotkey: None
    • Path: Menu > About Google Chrome
    • What is it: The about page for Chrome, includes version number and update check.
  • Hidden Pages: chrome://about/
    • Dragon: Very Dangerous
    • Hotkey: None
    • Path: Address Bar > Type URL
    • What is it: List of all hidden Chrome pages, including most of the above links.
Yes a few of these can be accessed by hot key, and yes a few of them are really easy to get to, personally I like having similar things grouped together even if they are accessible elsewhere. If you would prefer a handy cheat sheet of Chrome's keyboard shortcuts, this Chrome App has a pretty complete list for both MacOS and Windows: Clickless Shortcut Reference for Google Chrome you can also find the list on numerous websites, some more out of date than others.

The above list are just some of my favorites, you could select your own list of favorites or even add any URL you prefer (it is just a bookmark after all). The above are URLs that I find useful and would prefer not to have to type "chrome://" before omnibox starts making decent suggestions.

Out With The Old

So I started by clearing out my Bookmark bar folder, which had some old junk I had accidently saved from years past. You can access your bookmark bar folder by either clicking the Bookmarks URL I provided above or clicking on the Bookmark manager menu entry as shown below.



Once there, make sure that you are in the "Bookmarks Bar" folder and you can delete any unwanted bookmarks by right clicking on the bookmark and left clicking delete.




In With The New

Adding the links we want is even easier. You can start by clicking on each of the links I provided above, once opened click the Bookmark star to the right of the url box, once it pop's open check to ensure you are saving the link to your "Bookmarks Bar", if you mess up don't worry, just click the star again to bring the menu back up and correct the folder. You could also create a sub-folder in the Bookmarks Bar and store these new bookmarks in that folder if you desired, which if you have as many of these links as I do would be a very good idea unless you don't plan on adding any more. Again it's all up to personal preference.


Repeat for each URL you would like to add to the Bookmarks bar, keep in mind the space on the bar is not unlimited and if you add too many the list will not be fully accessible with 1 click and instead will require clicking a pulldown as shown below.

Final Result

I really enjoy keeping the configuration menus just a click away, and I also use the Bookmarks Bar for some other folders that I didn't really go into today and there are a whole lot of other options not just for accessing the configuration menus but for managing your bookmarks that would take a whole entry of itself to discuss. For now I leave that as an exercise for you to work on if you are interested in improving your workflow further.

As you can see I have quick access to my install Chrome Apps, the Web Store, my bookmarks, installed extensions, history, and a few other useful pages.




Let me know what you think in the comments! Did you find this useful? Did I miss something? Have a topic you would like me to cover? Hit me up in the comments box or PM me on G+

Take care!

Monday, October 13, 2014

UML Modeling



UML Diagrams, not exactly the first thing at the top of the list when you think of the many things that your project needs. They quite often shine a light on things in a way that other types of documentation just can't. Typical documentation is an excellent source of information, installation instructions, system purpose, and execution logic. All of these bits help us to better understand a system, and often times they do a very good job.

While standard text and graphics documentation strike the nail in just the right spot most of the time, some of that information could actually be best represented as a UML Diagram. In these situations where you have a significant amount of information about the structure of a system or process that you need to convey in a quick and easy to understand manner.

If your new to UML then I highly recommend this very helpful guide, it will explain the different types of modeling possible, and some ideal uses for UML Diagrams.

The Complete Guide to UML Diagram Types with Examples

If your already familiar with UML Diagrams then I want to introduce you to one of my favorite tools for modeling such diagrams.

PlantUML
Open Source/Java Based
Cross-Platform (Windows, MacOS X, Linux, BSD)
The low low price of free!

Say hello to PlantUML an open source, cross platform text based UML modeling application. Yes I said text based, I discovered this application while trying out the dizzying number of applications that allow be to build UML diagrams using drag, point and click actions. For myself I found the latter much more work than the text based approach that PlantUML allows me to take.

Here are some examples on using PlantUML to model different types of diagrams:
Sequence Use Case Classes Activity Activity 2 (Beta) Component State Objects

Personally in many instances I found being able to type the diagrams up for PlantUML to be significantly faster for me than building the models by dragging, pointing and clicking objects. This is at a cost, diagrams built in PlantUML are not usually editable by other UML applications, fortunately for me this was not a real issue.

PlantUML was easily able to export UML models for me in PNG (raster) or SVG (vector) formats, and I was also able to get PDF (vector not raster) output by using Cairo's svg2pdf utility which I know works on both Linux and MacOS X. There are also tools that will convert the SVG to a PDF in raster format.

For those who would rather prefer a drag, point, and click variety of UML modeling applications, I recommend the following contenders. I'm not saying any of these tools are better than another, but these are my favorites.

Drawexpress Full / Drawexpress Lite
Proprietary
Android
Full ($5.99) / Lite (Free)

TouchDraw
Proprietary
Android
Full ($8.99)

Omnigraffle
Proprietary
Mac OSX, and iPad
Mac Standard ($99.00) / Mac Pro ($199.99) / iPad ($49.99)

Microsoft Visio 2013
Proprietary
Microsoft Windows Only
$589.99


Do you know of another good UML modeling application worth mentioning?
Let me know in the comments, I'd love to add it to the list!