Showing posts with the label Web Development

Don't Prompt for Permissions without the User's Direct Interaction

For all the applications out there! Stop pushing for permissions and stop probing for information without reason. Regardless of your necessity for a feature a user is the right for not installing or using an app without clear intent. Action from the user are a direct link from the developer to the client for clear reason and intent on why they need permissions. I see this now and again with website using geo-location and never giving a reason on why the need the permissions but sure enough its the first prompt I get on their site...  This why I really like the recent changes with android its a little annoying for coding but the information needed for the user on why you need some information is clear. I always have to fight with project managers on whats initiate and I can be more direct on why I need something than from what you are asking me to do. There is still room for error (security issues) with a client if they still don't trust an application which I always say they can …

Making my own CMS

Back in 2012, I started writing out my own idea an cms or what one should look like and how it should interact with its developers. I've looked at other cms projects and even contributed to my favorite one which is orchard. After jump around different technologies though I would still say a mean server application is probably the best choice for productivity and mobility with other technologies. At the end of the day it doesn't matter what the code is I can simply it with javascript. This is my take on a cms and before I start writing any code and I actually have my own set of requirements to achieve.
Function to wrap and unwrap a components with the container class.Function to make an element a link, plus add new target, and what it points to.A lot like what's in blogger when creating a post.reorder the records in a table and other permanently actions for simpler code.embed static content from the backend into static html, because somethings don't change.d…

Top-Down Development

If you ask me what my development style is like? I would have to describe it as a form of top-down view with a model view approach. I've been describing my approach to build web application this way for a few years. Every now and then I encountered a developers who will agree with this approach. I guess you can just take the definition from wiki page but really I have my own way of marketing it.     "Throw everything away thing and get ready to start fresh. That's just how it is with every new javascript framework and I think it’s safe to say if it not middle-tier or backend code get ready to rebuild it. This is actually an awesome thing and you need to believe it because forcing development to the backend or middle tier every time something new comes along isn't realistic. Besides why not have the biggest impact on an application's lifecycle with the least amount of work!?"     This is how I marketed my approach it probably could use some work for some dev…

The Sandbox Methodology

"Sandbox Methodology" is a term I like to use to describe environments that have zero rules in place against the quick and the dirty practices when it comes to designing an application or implementing one. The term comes from of course sandbox and what most developers are used to with development practices. In a sandbox you have a place where you can experiment with all your work before it faces the harsh world of usability. However in reality, this environment is miss used and becomes a playground for project managers or basically anyone in management to see how far you are in the implementation. Or it’s used to build out requirements, "let the developer figure out what I want to be build playground". Long name, terrible results… You might be familiar with other methodologies but this is one you will definitely regret using.     It could be said this approach is more of a waterfall methodology and employers will call it Agile. Chances are it’s a horrible mess a…

Making Internal Web Apps into Software Apps

When you're building an internal web app I think about some of the business solutions I  can create inside a company that might shrink the workload for my co-workers. Its awesome to see this happen but it only works where it makes sense, so below is some of these features I've easily used by general users.

Hotkeys - are power ways to help your users get what they want faster, and overlooked in my opinion. Since users are in house users can make requests on what the would like to see. I don't like use the excuse that your users are "dumb" especially in house. This is an argument I hear a lot and it bugs me. For example if the app looks like a excel sheet one would think it behaves like one, so include those hotkey! Below is a hotkey I look to use a lot with my users on a search page looking to you the typeahead feature I created. Instead I popup with the search automatically and return the results since it a common action. Another good example to look at is Gm…

Mobile Design for Multi-Navigation Systems

So awhile back I started a project that would extend or solidify the bootstrap sidenav. This is because I didn't think the grid system was qualified for such a major role. Bootstrap works great for mobile design up until you start talking about a different navigations than what the guidelines recommend. I'm still working on this project but for I now have hopes of finishing it which you can find on github under the  name bootstrap-sidenav-component. Much of my effect in the last couple years has been to extended bootstrap not recreate or overlap it, which is what this project will do as well hence why I call it a component of bootstrap.


Web/Game Development - Math Isn't going to be a Problem

When I was in college I wondered how much math I would need to become a game developer. Just for one of my associate degrees I had to take calc 2 which honestly wasn't that bad, I think the physics based calc was more of a challenge but that's in the past now. The real work begins is in my career and a lot of times my math isn't what it needs to be to create a proper solution. When I was building penguins-rising I didn't have any problems with coding just solving some algebra. So I went out of my way after that project to study what I could.
Terms & Studies
GeometricsOrientation (vector space)Making a Rotation Matrix From Scratch - YouTubeTexturesPhong reflection model by a student that shows how graphs can be modified.Fuzzy setAlgebra (of course)VerticesVectors? Just going off my knowledge with C++ This is just a few things I've come across over the years as a developer, I think its interesting how web…

My Patco - Version 14

My goal for the support of "My Patco" is to create updates every once a month, and have the schedule automated from here on out. I think for the next few months I will need to validate most of my work but for the most part the updates coming in the end of this should really start to be stable. Initially I created the database around google's train system standard however looking things from a direct approach this approach doesn't need the same level of architecture. In fact it hurts me because I'm constantly looking for things and need to join tables just to query a single schedule. I could probably do it all with just two parameters.
   For I'm aiming to finishing this version up which requires some work on the backend more than the app but users should see the app respond a lot faster. I know there was a bug when I released but had to meet my deadline or else I would just keep pushing it back. Things like that can happen a lot if your just doing it for…

Use Seo for Employment!

I think I have a pretty good understanding of  structured data. Most of my experience comes from my blog but now I'm using it with my personal sites and it got me think what good it could do for others if people used bring in work maybe they do and I just don't know. No more recruiters, headhunters, etc. However my personal experience taught me that it's much more than just putting your name out there. Its proving by example which is becoming easier each day for me, still this is what I did for my site.

For Workers
   Use and google's structured data tool, as a added bonus I recommend using microsoft's seo tools as well. Both bing and google have a webmaster tools, bing's isn't as nice in my opinion.

The Gist of it (Microdata)

<div itemscope="" itemtype="">       <link itemprop="sameAs" href="" />       <img itemprop="image"…

Company Logo's by CSS and maybe with Seo support?

Overview What I want to do is take a company logo and instead of an image to display is by css instead. Then using the favicon of the as the seo image and for backward support on older browser. With css3 animations this would allow me to add more flare to the logo as well as the company name that usually appears inside the logo image. This Separation would give much a lot flexibility as well as quality over an image.
Example Below is an example of a logo (similar but exact to company logo), and as stated usually a company name is either beside the logo or the company itself is apart of the logo. With internal apps I would reuse this logo but not the company name.

Notes     I haven’t fully tested this on a website buts it’s still just an idea and if it works it could save time retrieving the logo in a single favicon which can still be a png. There is were a fallen can take place, in my example I didn’’t show this but ju…

Another look at using Steppers and Menu Wheels

With a lot of my websites I don't get to thinking about the number of clicks and simplifying the number of clicks is sometimes difficult. So for a large part of my projects its sticking to the old tricks unless I rare opportunity. However playing around cordova and working on my nanodegree for udacity as gotten me to thinking. I like the concept of steppers but they case really fits for predefined, short and simply lists that would otherwise be a dropdown.
A better and more general use would be menu wheel kinda like on a iphone when it its a select list, I'm not a iphone user so I get the simple version on android. Making the experience the same is key so in the past when I was at coriell I got the chance to implement something similar for mobile and desktop users which was successful. I forget what I used but one thing I know is it didn't leverage the mouse wheel. I would have liked to have added that for an enhanc…

UI Design for Processing Modals

Dialogs, Light boxes, and Modals whatever you call them are a common interface used in websites. When I started out I constantly had to write code to handle multiple situations. After writing a few I started to list a few behaviors I think should happen in/after a modal close. Without going to deep in an explanation I really just wanted to come up with a good way to include offline mode in my applications.
Rules Not all of them but just some examples, the image is a better example. Every action must give imitate feedback to the user (results can be async). I.E. "Buy" will convert to "Processing" Information should be logged and stored for users to retrieve it. Applications Types of applications these I thought of. Ecommerce quick way to buy Settings in a Dashboard Post back or User session stored variables. Social Media Log ins When attaching or connecting to main site account. Pretty much any modal that modifies back-end data.

Avoid Mixing Server Side and Client Side Code

Some Background      This article is from a time when I used primarily 4 with razor syntax which was a love and hate relationship. I started out as a front-end developer but was limited by my peers on the technologies I could use as well as my skills. Even though I was peer reviewed much of my code was "acceptable" I however felt it lacked something.
Currently      I avoid mixing MT (middle-tier) and FE (front-end) code; it goes in hand with my philosophy on how to design web applications. I strongly recommend going the extra mile. Ask yourself how will others use the code; not how will they reuse it, that's another concern. Also how will you debug it if something goes wrong? There are many reasons why I avoid doing this. Mainly cause I like to take the approach of SOC (separation of concerns).After years of frustration trying to debug finally I made this rule for myself. Not only with my code but in my process of thought during developing. Which was be a big task a…

A Good Structure can say a lot

So one of the things you got to love about developing applications is the default folder structure. As a nou can easily pick up on the concepts and figure how to organize yourself. When starting out an unity3d project not so muc (in opinion). I look at the new 6 as a perfect an example, ita not simple but labeled out and can teach you new concepts. Maybe is just me since I write more web apps than games. Whatever the case may be I've learned is its not easy to pickup on new concepts if the structure isn't there by example.
   So a little bit of my experience and not to down play unity3d cause it is pretty simple to get. What I see as a constant problem is organization and structure. Which the two go in hand when developing. Whenever I use plugins and import other's code its doffocult to get back so some kind of structure. Everyone does it differently but it can get really annoying if you have a folder structure and you want to force it across your im…

Svn Merging Dev/Prod with TortoiseSVN

    For some of my professional projects I don't get to choose the environment and when that happens I'm forced to learn or re-learn in this case certain tools/technologies. I can't take complete credit for this article as it was mostly written by a previous co-worker however nothing here is secretive and it shouldn't be; since none of it is proprietary

Merging from Trunk to Branch
After making any change in trunk, immediately merge those changes to the branch, Make sure your working copy of your branch has no un-commited changes. Open command prompt and change into tortise bin folder. Usually: c:\Program Files\TortoiseSVN\bin\ Update your branch working copy with the following command:TortoiseProc.exe /command:update /path:C:\Development\YOURPROJECTReplace the path parameter with the actual path to your branch working copyRun the following command:TortoiseProc.exe /command:merge /fromurl: following screen will appear. Leave the d…

Notes: Creating an Automated Testing Framework W/ Selenium

Recently finished watching all the videos on Selenium on automated testing and looking forward adding this framework to all my web applications tests. The rest of my knowledge can be found on the Login-Automation project (I took the example and created it around google's login instead of the wordpress example show).

Types of Testing Unit TestingAt the code level, code first! Such as "Mocking" or D.I.Integration TestingNo need for mocking but still code.Black-box Automate Testing (BAT)Testing in a scope from a user Regression - "worked yesterday"Absolute Requirements!LeverageCommon failures Recorded brittle tests - weakly attached and simple changes break the tests, manual fixes.Not Building A Framework - Start out good, but end up the same problem.Writing Test like Code - Passed off to not programmers and slow degrade.Solution      Separate automation framework and simple tests. Test drive creation of the framework. System under Test (SUT) Architecture - No di…

The Three Types of Content with Web Development

I don't know if anyone else thinks about content theway I do and I'm always challenging myself to see if my thoughts hold true with others. This way idea might seem simple but it goes way back in college when I was just starting out and learning to code. During one of my classes I asked myself the old question "What is static? When is it static?" From all my experience and development in the field, I've came up with this approach which I think is based off current technologies but mostly on my experencies with cms technologies. This article goes really inhand with my other article on The Four Components of a Web Application.

The way I've answered both questions is by treating everything as dynamic (to some degree) and to imagine that everything eventually becomes static.Whether its a database query or whatever; to some degree everything becomes "out dated". So at what cost is it worth it to make something more dynamic or static? If y…

The Three Types of Material Design Libraries Available

There are a tons Material Design projects out there but I choose these three because of their popularity and for the fact I just found these projects interesting for a few of own projects. I work in a variety of environments so each gave me certain advantages over the other. This article is just how I broke them down and what projects I plan use them for. for when you are using angularjs.missing some stuff or just not shown in the documents.Great for my single page example. for bootstrap project and updating them to material design themes.Wish they used Sauce labs Tests like bootstrap.Great for updating my bootstrap sites and my blog. Jquery, and simple to get up and run just like bootstrap.Very close to other css libraries but still different; only a question of how much support.Great use for my emberjs project.

Just a Thought with MVC and Portability

Since the release of Vnext this idea has become less of a concern for me but a majority of my "professional" projects have been in MVC and with Vnext offering larger amount of support this article doesn't really reflect any of my current solutions. Instead it is just a thought on allowing me to continue with the frameworks that I currently use in my career with frameworks that are available to me in my personal projects.       It is very important to me, to create fast, low cost, and high processing application. As I like build with large number of tools in order to increase my productivity since I have less time at home. Working in familiar frameworks between work and home isn't a must but just something I think that works in my favor. If all else fails, I can just pick things up. I go along. Plus there's always the bonus of my javascript skills.      My original thoughts for this approach show below was to move all my controllers into an angular project a…

Array Value Url Queries

I have written some articles on Solr and even more on AngularJs however when it comes to URL queries, I think a lot of production solutions do the opposite of what I'm about to suggest. I think the simpler approach is better and if major companies looked at their solution might find that their UI to be over cumbersome. I think if a URL is public it should be straightforward with what its values mean. This gives advanced users the ability to directly navigate and novice the ability to bookmark urls.        The problem with facets in search grid is that you have a limited number characters you can use. This is less of a problem in a post form but you won't get link for your novice users. I don't like the idea of a "bookmark button" - style UI where it provides the users with a guid that is unique to their search. So a get method approach is more appropriate for the behavior we want. At one point I thought it would be necessary for guid value kind of system. Wher…