- Angular 2. I have actually been starting to learn Angular 2 the last two weeks. One good session I attended was a side by side comparison between Angular 1 and 2 by Tony Gemol.
- RxJs. I did not attend any sessions that were specific to RxJs but part of learning Angular 2 requires being familiar with RxJs.
- Firebase. I had been wanting to take a look at Firebase for awhile and one of the sessions by Anne Bougie was a good getting started overview.
- git. Yes git. I have been working with git 5 years and thought I knew it pretty well. But after attending the git session by Kieth Dahlby I realize there are a lot of advanced features that I am not familiar with.
I have a client that needs to log any interactions with their customers in SharePoint. This client is proficient enough with SharePoint that they feel perfectly comfortable modifying lists in order to add or remove fields to accommodate their needs without having to go through us. They are regularly adding new fields to this log list in order to capture some new piece of relevant information that it was decided they needed. This is important background because when they approached me to create a way for them to generate multiple log entries from one “New Item” SharePoint List Form, I knew I couldn’t just create a custom “New Item” form to accomplish this or they would lose the ability to add new fields without having to either modify this custom “New Item” form, or involve us to make those modifications.
So I had to come up with a solution that would retain the standard “New Item” form (so any fields added/removed from the list would be reflected in the form) but would allow for the user to create an entry in their logs for every customer selected in the form.
I was recently tasked with creating an effective means of tracking/reporting on project tasks in SharePoint Online. Based on the requirements I setup everything “out of the box” to show what could be accomplished by using simply using Content Types, Site Columns, Managed Properties and Search. The client liked the outcome but didn’t necessarily love it. Search API to the rescue. More…
We recently worked with Benefit Express (BE), a health benefits administration firm, to enhance their in-house software. We’ve worked with them in the past, so they knew our agile, feature-driven development processes could meet their needs.
Our total transparency model allowed us to be in constant communication with BE even though we worked remotely, ensuring the product would give their customers what they needed.
Utilizing Angular.js, C#, and Web API, we provided the tools and resources that allowed BE to finish their project on time.
Check out this video to learn more:
I have a client that has over 50 subsites of the root site in a SharePoint site collection that are all pretty much the same. There’s a site for each county in the client’s state, each one with web parts to show some data from the root site that’s relevant to that specific county (contacts’ information, documents, that kind of thing). Whenever they wanted to make a change to, say, the contacts web part for these county site, they had to modify over fifty copies of the same web part. Tedious to say the least. After a few rounds of making these kind of repetitious modifications it was decided that I would need to come up with a solution to make managing this stuff much easier.
So I did.
Recently, I worked on converting a .Net API from a 3rd party authentication mechanism to internal and we chose to use the Identity framework. By default, Identity uses a string as the primary key for the AspNetUsers table and that was an issue because our current users table used a long (and there were a lot of foreign key references to it).
Recently I had built an Angular JS application that would prompt the user for some information in a popup whenever they tried to navigate to a specific route, before that route’s page actually shows to the user. If the user provided some invalid data or they cancelled/closed the popup I needed the app to either a) take the user back to the route they were on or b) redirect to the home page of the app if they weren’t coming from a route within the app.
I recently needed to implement a custom event receiver on a document library with Incoming E-Mail enabled so that I could extract .zip file attachments from the email and put some metadata on the documents as they entered the library. I had set up the Incoming E-Mail on the library and had tested that it was properly receiving emails/attachments, which all worked just fine.
Then I created my event receiver.
We’ve been working with documents sets for a couple of years now. Document sets are a great way to group the different types of documents that we create to combine into one Statement of Work that is delivered to our clients. It is also a great place to store any and all of the emails and documents that the client may give to us to refer to as we put together our SOW.