Lock Down Content Widgets with UrlKeyPrefix

By | MVC, Sitefinity | No Comments

When you’re working with your content in Sitefinity, a very common practice to display said content is to provide a list and details view. On the page (or pages) containing these views, it is often good to provide a sidebar to provide for additional navigation functionality when users are browsing your content. News articles, for example, can support Tags to help classify stories into various buckets. It’s also nice for users to see a concise list of stories on the sidebar in addition to the more fleshed-out list that the page primarily shows. To accomplish this in Sitefinity appears trivial…

Read More
clipproject

Quick serial clip connector for your multiple IoT PCBs

By | Blogs, ESP8266, IoT, News | No Comments

You don’t need a fancy USB serial connector for your multiple IoT PCBs. It’s easy to create your own quick and inexpensive connector. This is an example of a simple quick-connect serial clip that can connect a PCB- mounted ESP8266 to a computer via USB. If you don’t want the expense or bother of soldering on a fancy USB connector to your many IoT PCBs for flashing and/or programing your ESP (or other) device, you have options. I worked out an easy, cheap, and reliable method of making a quick short-term connection. You need a few things. Some parts you…

Read More
NativeScript TimePicker Spinner

Controlling the NativeScript TimePicker Rendering Style on Android

By | NativeScript, Telerik | No Comments

On a recent NativeScript project,  it was decided to upgrade our Telerik UI for NativeScript Pro controls. After this upgrade our TimePicker controls changed rendering styles from this (desired style): To this: They are both very attractive TimePickers, but for our purposes we needed to have it render the same as it was originally intended, before the upgrade. Controlling the TimePicker Rendering Mode With styles.xml After some research, it was determined that there are only these two modes that TimePickers will render on Android, namely spinner and clock. In order to force our component to render the way it was intended, we needed to add styles to our…

Read More
Syringe

Escaping From Relative Paths in Node.js With DI

By | JavaScript, node.js | No Comments

I’ve written before about one way to escape from relative-path “hell” in Node.js by leveraging the built-in behavior of the require function to look in the node_modules folder starting in the current folder and working upwards until it can’t go any further. This approach has some great benefits and I do like it a lot, except for one major problem: My preferred code editor–Visual Studio Code–automatically omits the contents of node_modules folders from search results by default. I have managed to configure my preferences in the past to exclude only the root node_modules folder while including lower ones, but the…

Read More
00-locked

Locks in Sitefinity: Keeping Content Free

By | Sitefinity | No Comments

Exclusive locks are nothing new. It is a basic concept that tons of multi-user programs, tools, and systems use so that users don’t step on each other’s toes when they’re trying to work on something. It would be awful if you spend 30 minutes editing an article only to find that someone else stepped in and blew away your edits because they saw a typo and jumped in to quickly fix it. Sitefinity is no different in this regard: Pages, built-in content, and custom content all have built-in locking functionality. If you’ve worked with other content editors on a Sitefinity…

Read More
inc 5000 falafel logo

Inc. Magazine Unveils 35th Annual List of America’s Fastest-Growing Private Companies—the Inc. 5000 and We’re On It.

By | News | No Comments

Since 2003, Falafel has had one mission; to deliver great software development & consulting services and to educate the development communities on new technologies. Throughout this journey, we have worked with the biggest companies in the world and spoken at many conferences. Today, we have the pleasure of announcing that we have been listed in Inc. magazine’a 35th annual Inc. 5000 list, an exclusive ranking of the nation’s fastest-growing private companies. Falafel joins companies such as Intuit, Under Armor, Microsoft, Square, GoPro, Dollar Shave Club, Clif Bar, and many other well-known names. “We are thrilled to be selected as part of…

Read More
WP_20160813_004

Solved: Windows 10 Anniversary Update Install Hang

By | Windows | No Comments

Over the weekend, Windows Update alerted me that the Windows 10 Anniversary Update was available to be installed onto my Thinkpad W530 laptop. Since I was anxious to try out the new Bash shell integration, I clicked the button to start the update. Downloading the files took about 30 minutes. Then, I had to schedule a reboot (read: I chose to restart right away). The installation began, and after a few automatic reboots, I found myself staring at a screen showing the installation at 32% complete. But, the progress spinner wasn’t spinning and there was no hard drive activity. Was the installation stuck,…

Read More

Node.js + Express.js Video Walkthrough Part 2

By | JavaScript, node.js | One Comment

This is post 2 of 2 in the series “Node.js + Express.js Video Walkthrough” After my recent series on Node.js culminating in an introduction to Express.js, I wanted to give a tour of what an Express.js project looks like, but I also thought that doing so in written form would result in a lot of copy-pasted code that would obscure the bigger picture of the project strucure. So instead, I thought that maybe a video would be a good way to show things in action! This is the second half of a two-part walkthrough of the structure of a Node.js…

Read More

Node.js + Express.js Video Walkthrough Part 1

By | JavaScript, node.js | No Comments

This is post 1 of 2 in the series “Node.js + Express.js Video Walkthrough” After my recent series on Node.js culminating in an introduction to Express.js, I wanted to give a tour of what an Express.js project looks like, but I also thought that doing so in written form would result in a lot of copy-pasted code that would obscure the bigger picture of the project strucure. So instead, I thought that maybe a video would be a good way to show things in action! This is the first half of a two-part walkthrough of the structure of a Node.js…

Read More
2016-07-31 17_41_04-Kendo UI Grid with Custom Checkbox - JSFiddle

Kendo UI Grid with Two Kinds of Checkboxes

By | Kendo UI | No Comments

In my last blog, I showed some examples of dates in a Kendo UI Grid. This time, let’s look at checkboxes. True/False data in the Kendo UI Grid is always interesting to work with. A checkbox makes sense for boolean values, but they come with some expectation from the user’s point of view. They see a checkbox, and they want to be able to click it! Entering an Edit mode and then clicking the checkbox just doesn’t cut it.

Read More
Filtering data with the Search Bar

Xamarin Quick Tip – Adding a Search Bar to a UITableView in iOS

By | .NET, C#, iOS, Mobile, Multi-Device, Visual Studio, Xamarin | No Comments

A common bit of functionality required in a mobile application is including some type of search functionality in an application. Typically this takes the form of a search bar along with tabular results. In this article, I will walk you  through adding simple search functionality to a UITableView in iOS. Setting up the project Create a new blank iOS universal application with a storyboard. In the storyboard create a new UITableViewController and assign it the class name of FruitTableViewController. Name the table tblFruit. Finally, change the type of table cell to Basic, and assign it the reuse identifier of FruitCellId. If you have trouble setting…

Read More
Swipe Left on Pineapple

Xamarin Quick Tip – Swipe Left To Delete

By | .NET, C#, iOS, Mobile, Multi-Device, Visual Studio, Xamarin | No Comments

In some projects, it may be requested to be able to swipe left to delete an item in a table. In order to implement this, there is a handy component called SwTableViewCell that provides this valuable functionality.  What is missing however, is decent documentation to get it up and running with Xamarin. In this article, I will walk you through adding this component to an already existing table view. Setting up the project The first thing we need to do is to build an application that has a table populated with some items. Create a new C#, Universal iOS application,…

Read More
Selecting a Tab in Visual Studio Moves it to the First Position

Selecting a Tab in Visual Studio Moves it to First Position

By | Visual Studio | One Comment

Recently I noticed that selecting a tab in Visual Studio moves it to first position in the tab well.  This was pretty shocking to me because I was fairly certain that things where not always this way.  I verified there where not any updates to Visual Studio lately that may be the issue.  Then I looked at the Visual Studio Productivity Power Tools because I knew that this extension added capability to the tab well. Sure enough that extension was updated very recently.  So I did some digging into the options for this extension and found this: Apparently someone decided that…

Read More
00-master

Using HandleUnknownAction in MVC Widgets

By | .NET, ASP.NET, C#, MVC, Sitefinity | No Comments

Sitefinity’s MVC widgets are fantastic. They allow untold amounts of customization and enable you to create an MVC framework as complex or as simple as you need. There is a caveat to using them, however: Because the controllers are typical ASP.NET MVC controllers, going to particular pages on your site might make them disappear! There is a simple workaround for this problem, and with this information you can ensure that your Sitefinity MVC widgets consistently display no matter what current state your web site is in. The Problem Say you have a simple custom MVC widget that has a single…

Read More
Component in Solution Explorer showing "Error"

Xamarin Visual Studio: Error adding to project: Cannot get libraries from incompatible component

By | Visual Studio, Xamarin | No Comments

I recently came across a scenario with Xamarin Visual Studio where one developer would add a new Xamarin Component in to the solution and check in the bits and then a different developer would pull down the latest bits and receive a compilation error specific to the class or classes of the newly added component not being found. In the solution explorer the component showed as “[ComponentName] (Error)”. Double-clicking on the component brought up the details and at the top was a little red error message that stated “Error adding to project: Cannot get libraries from incompatible component”. Turns out the trick for resolving…

Read More
Express+Handlebars

Getting Started with Node.js in Windows – Web Apps With Express

By | JavaScript, node.js | No Comments

This is post 3 of 3 in the series “Getting Started with Node JS” Recap In my first post, I went over the basics of Node.js package management with the NPM CLI. In the second, I went a little deeper and delved into the the basic architectural foundations of a Node.js application. Today, we will take all of these things and apply them to create the skeleton of a web application capable of reading data from request URLs and bodies and responding with HTML templates or JSON formatted data. Choices! If there’s one thing that really differentiates the ecosystem of Microsoft .NET…

Read More
kendo css heart

Kendo UI Customization with CSS

By | CSS, HTML5, Kendo UI | One Comment

I’ve been using Kendo UI for many years now and I continue to be impressed with the many ways it can be extended and customized. Recently, I had a client request a Kendo Grid customization that at first glance seemed like it might require some code changes, but in the end, it could all be done purely with CSS. Here is the scenario as a CSS customization example: by default, the Kendo Grid shows the sort icon immediately after the header text and when using the column menu with a filter applied, it highlights the border around the column menu…

Read More

Getting Started with Node.js in Windows – Node Modules

By | JavaScript, node.js | No Comments

This is post 2 of 3 in the series “Getting Started with Node JS” Introduction In the previous post, I gave a quick idea of what Node.js is and then fell down the rabbit hole of the topic of NPM. With all that said and done, you should have a basic working knowledge of how to manage NPM packages, both locally and globally. So now let’s turn to the topic of Node.js programming itself. In the previous post about NPM, I mentioned that NPM uses a file named package.json to keep track of dependencies so others can reinstall packages that your…

Read More
Classical inheritance

Getting Started with Node.js in Windows – NPM

By | JavaScript, node.js | No Comments

This is post 1 of 3 in the series “Getting Started with Node JS” Introduction I’ve already written a few posts about my own journey to find a good Node.js development environment on Windows: journeying from the familiar environment of Visual Studio, to the opposite end of the spectrum with Sublime Text, and then finally somewhere in the middle with Visual Studio Code, where I have dwelt happily ever since. But in the telling of that journey, I’ve glossed over the meat of getting to know Node.js itself, and so that’s what I’m going to do in this post: share…

Read More
Sitefinity-Roles

Accessing Sitefinity Roles in Code

By | .NET, C#, Sitefinity | No Comments

When developing custom solutions in your Sitefinity application, you may need the ability to work with Sitefinity roles. As a developer, you would reach out to the RoleManager that Sitefinity provides, and access the roles from there. However, you may run into an issue where some roles, verified to be a part of your site, are not represented when working with the RoleManager. This post goes into this issue, and shows how to access all Sitefinity roles to work with. Basic Role Access Let’s say you want to list all available Sitefinity roles on your web site. The natural idea…

Read More
FalafelBytesLogo

Falafel Bytes Show is Released

By | Falafel Bytes, News | No Comments

Starting July 1st 2016, Falafel Software has released a new video show called “Falafel Bytes” that will interview technologists and celebrities from all over the world to chat about subjects that are important to you and your technology teams. Topics: We will be talking about Windows, Mac, Linux, Hololens, Testing, Mobile, Xamarin, NativeScript, iOS, Android, VR, IoT,  ASP.NET, Angular2, Azure, AWS, Power BI, Wearables, CMS, and many more topics… YouTube: Subscribe to our channel on YouTube and we look forward to producing these interviews.  Don’t miss the bloopers at the end of each interview 🙂 First Show: The first show…

Read More
sitefinity-status-page-200

Sitefinity Status Page HTTP Response Codes

By | Sitefinity | No Comments

When working with the new Web Services module or WCF services in Sitefinity, you want to be able to allow the requesting clients to properly respond to and handle a failed request. This is generally simple enough, as a failed request would usually be accompanied by an HTTP status code that indicates something went wrong. The status can be reviewed by the client and handled appropriately based on the status code (such as 404 for not found or 500 for a server error). To demonstrate this let’s look at this sample code, which uses the Web Services module API to…

Read More