Aller au contenu
  • billets
    20
  • commentaire
    0
  • vues
    171

Billets dans ce blog

 

Junior Application Developer career path for recent graduates

Growing up, everyone insists that a college education will open so many doors—and it definitely can! …But, what they don’t tell you is just how competitive it can be to find a job (let alone a potential career job). After graduation, you start looking around for an opportunity to start your career. Suddenly, you find yourself in this whirlpool of candidates (all just as qualified as you) pining for the same entry-level position. What’s more, the worst part is that—nine times out of ten—the entry-level position has zero growth potential… Seasoned workforce veterans chalk it up to being the “first rung on the ladder”—a step you have to take just to gain experience and clear that “entry-level” label. And once you’ve put in (at least) two years of hard work, sweat and tears, only then can you move on and find a job within your desired career path… How can that be fair? Let me be clear—it isn’t. You worked hard in your four years at school; you went the extra mile, taking on additional work and responsibilities to help distinguish yourself (not to mention your huge monetary investment). So, why waste your time competing for a job with a dead end?  You deserve to work for a company that recognizes your hard work—a company that wants to invest in you and your potential. A company that offers guaranteed growth potential. Did you just graduate from college? Did you major in programming or related field? Are you passionate about development? MainSpring’s Junior Developer career path may be the perfect fit for you. Junior Application Developer Job Location: Towson/Baltimore Metro Area Type: Fulltime, Mon-Fri Start Date: Immediately The Developer is responsible for designing, developing and implementing creative application solutions for a variety of government and commercial U.S and international clients. The ideal developer is innovative and efficient, and will adhere to proven processes and standards outlined in the MainSpring Agile Development process. Primary roles & responsibilities: Develop and support software and database applications for the MainSpring client base as well as for internal projects Ensure project development/features remain in scope and proactively communicate with the team and the client throughout the course of projects Provide budget and schedule updates to the project manager Schedule and actively contribute to project meetings Manage change order process for projects Meet/exceed billable utilization targets Maintain proficiency and certification in development platforms as required ​ Job requirements & qualifications: Bachelor’s degree in a related field preferred, comparable experience required Experience with FileMaker, Objective C, Swift, MySQL, HTML, CSS and PHP Experience with the Agile development process preferred, not required Fundamental knowledge of database and application design, scripting, data parsing, technical documentation Knowledge of relational database design and concepts with a primary focus on FileMaker and PHP development Demonstrate ability to work as part of an application development team; create task lists, timelines and deliverables, work to meet project schedules determined by others Excellent communication and customer service skills Demonstrated strong history of success with managing processes, people and projects Must work out of Towson, MD office About MainSpring MainSpring is an IT strategy and consulting firm that arms organizations with the strategy, tools and resources to grow. We foster a family-friendly, innovative, challenging, fun working environment earning the distinction of being one of Frederick’s best places to work and countless awards for employee programs, growth and innovation. Founded in 1993, MainSpring is headquartered in Frederick, Md., with offices in Florida, Ohio, Washington and Wisconsin. The firm supports a wide range of clients including businesses, nonprofits and government agencies, such as the Department of Defense. Like our clients, people tend to stay at MainSpring. If you think you’re a match, let’s connect! Apply today
Afficher la totalité du billet

MainSpring

MainSpring

 

FileMaker 17 licensing updates

MainSpring is excited to announce the release of FileMaker 17! With the new release, FileMaker, Inc. is changing their licensing program to be dramatically more simple and user-friendly. New features of FileMaker 17 licensing programs The new licensing programs will license the entire FileMaker platform—there are no longer separate products, so everyone receives access to all aspects of FileMaker. Another major change is that there’s no longer a difference between FileMaker Pro and FileMaker Pro Advanced; all copies of the desktop client can enable the Advanced functionality. FileMaker Data API The FileMaker Data API is also now fully released and covered by the new licensing programs. The Data API allows for unlimited inbound data and 2GB of data usage per month for each licensed user on an annual basis. Essentially, if you have 10 users, that means you’re licensed for 240GB of outbound Data API transfers every year. If you find you need more than that, though, all you have to do is increase your user count. Single license key Perhaps the most convenient change to the licensing program is that each licensing contract will have a single license key. That license key will also remain the same from version to version for as long as your contract is active. This greatly simplifies deployment, as well as the management of license keys. Three licensing programs available There are now three different licensing programs: User Licensing, Site Licensing, and Concurrency Licensing. In all cases, users can choose to purchase an annual or perpetual license. Most companies, however, will utilize the User Licensing program. User Licensing User Licensing is based upon the total number of users who will be using FileMaker in an organization. All of those users will be able to access FileMaker Solutions using FileMaker Pro Advanced, FileMaker Go, and FileMaker WebDirect. User License holders will also be able to install up to three instances of FileMaker Server. If you have annual licensing, one of the three server instances can be installed in FileMaker Cloud. Site Licensing Site licensing continues to offer a wonderful value for organizations with a large percentage of FileMaker users. Site licensing continues to have a minimum head count of 25 users. However, Site License holders are now only able to install as many licenses of FileMaker Server as they have in their headcount, which is a slight change from the previously unlimited number of FileMaker servers. Concurrency Licensing Concurrency Licensing continues to be an option for companies that require a shared pool of anonymous connections for WebDirect and FileMaker Go. Concurrency contracts can only install a single instance of FileMaker Server, and they have the highest cost per user. The good thing is that most instances of concurrent connections that were licensed in conjunction with the previous volume license program can now probably be covered by the new User Licensing program. Please contact MainSpring if you’d like to talk through your use case for Concurrencies. What to expect when you receive your FileMaker 17 license key For users that are under an annual contract, or have maintenance for their perpetual license, here’s what you can expect when you receive your FileMaker 17 license keys: Volume Licensing and Team Licensing becomes User Licensing Volume Licenses transitioning to User Licenses will have a user count equivalent to the number of copies of Pro and Pro Advanced If you have multiple contracts, you will receive one key for each contract in the same email If you have a Volume License and Concurrent Connections for your server, you will receive a User License and a Concurrency License Save money with price protection Don’t forget about price protection! FileMaker is offering price protection for users for the first year after release. This means you can renew your contract at FileMaker 16 pricing for up to one year after the release of FileMaker 17. When you renew your contract, you can also renew for up to three years, which locks in substantial savings.
Afficher la totalité du billet
 

New portal features in FileMaker 17

In this video, I’ll show off the two, new features of the portal object in FileMaker 17. We’ll start by quickly building a powerful master-detail layout. Then, we’ll automatically create relational database schema using the add-on table feature. 
Afficher la totalité du billet
 

FileMaker Go 17 feature roundup

With the release of the FileMaker 17 platform, there are many new FileMaker Go 17 features to review as well. Here’s a summary of the latest new features and changes to FileMaker on iOS. New features in FileMaker Go 17 Keyboard shortcuts. As power iOS users utilize external keyboard devices, they have noticed a lack of support for common FileMaker Pro shortcut commands via FileMaker Go. The new functionality in FileMaker Go will not only bring support for dozens of shortcuts in FileMaker Go, but also custom menu support for those shortcut actions. Local notifications. You will notice a new script step in FileMaker 17 called “Configure Local Notification”. This new script step allows you to script powerful OS-level alerts to display to your users. Alerts can be displayed at a timed interval and will persist even if FileMaker Go is no longer running! You can also tie alerts to scripts to fire off actions from the alerts. This functionality was previously only possible via 3rd party external apps, like AlertFlag. Drag & drop support. Text, photos and files can now be drag-and-dropped in FileMaker Go, enhancing the ease of use for storing files in FileMaker Go. App delegate. While not apparent to most, this is a big improvement to the FileMaker iOS SDK. The addition of an App delegate setting to the iOS SDK will allow developers to interact with iOS system events to provide a more seamless iOS app experience. GetSensor() function. FileMaker rolled out an impressive new GetSensor() function that can query and pull data from various sensors in iOS devices. Ever since I developed CoreScope, I have been asking for FileMaker to implement similar functionality. Now that it’s here, I’ve documented all the amazing new metadata features of this function in this blog post. Changed features in FileMaker Go 17 Launch center context menu. A new menu available in the launch center of FileMaker will allow you to perform a number of new file actions: Pin/Unpin files: Allows you to pin favorite files Delete files (Local files view): Allows you to remove files from the device Remove files (Recent files view): Allows you to clear the recent files list Share (Local files): Brings up the share/send file menu Rename (Local files): Brings up a dialog to rename the file Auto-complete/Type-ahead support. Edit boxes that use value lists will now support the “auto-complete using existing values” function via a native selector menu that will appear while typing. This will be especially useful for very long value lists, where you don’t want users to spend a lot of time scrolling to find a matching value. This update will result in quicker and more accurate data entry. Deprecated features in FileMaker Go 17 Get(WindowOrientation) function. This function is being removed as better functionality has come along since its release in version 13.
Afficher la totalité du billet
 

New for FileMaker 17: GetSensor function

FileMaker 17 introduced the new GetSensor function as a new mobile function available for use in FileMaker Go apps. With this new function, you can gather sensor data from an iOS device and use it programmatically in your custom app. While this is a good start, there’s still some device metadata and sensor data that is not available from the function. A few years ago, I released a metadata gathering app, CoreScope, that allows for more information to be gathered from the device. Due to my familiarity with iOS programming and sensors, I found some parts of FileMaker’s documentation on this function to be a little confusing. So, I dug deeper into Apple’s developer documentation to put together the below chart explaining in detail what each sensor reading represents. Use these helpful tables in order to understand and use sensors with the GetSensor() function. Interested in a deeper dive? Let me know in the comments, and I can link you to Apple’s documentation. Configuration    Battery sensor Location sensor (Note that if the optional accuracy and timeout parameters are not specified, a default accuracy of 100 meters and 10 seconds is used.) Attitude, speed & acceleration sensor (Note that if the optional accuracy and timeout parameters are not specified, a default accuracy of 100 meters and 10 seconds is used.) Magnetic sensor (Note that if the optional accuracy and timeout parameters are not specified, a default accuracy of 100 meters and 10 seconds is used.) Step count sensor (Note that if the optional second parameter is not specified, it returns the values measured since midnight of the current day. The sensor can be inaccurate if the user has not calibrated their phone’s step settings inside of health data and motion calibration. Also, returned measurements may be localized to the user’s iOS localization settings, eg. meters vs. feet.) Air pressure sensor
Afficher la totalité du billet
 

Beargie to speak at FileMaker conference in New Orleans

Next week, renowned FileMaker speaker and developer, Mike Beargie, will travel down to Le Pavillon hotel in New Orleans, La. to speak at the Pause on Error conference, hosted by the Women of FileMaker group, on May 7-8. When asked about the setup of this conference, Beargie replied, “Pause on Error is a bit of a wild-west style meetup. The smaller rooms lend well to allow speakers to share prototype work and techniques that drives innovation in our community.” Continuing, Beargie explains the sessions aren’t “present and consume,” like they are FileMaker DevCon, or other conferences. Instead, group discussion and participation are not only encouraged, but invaluable to the community. “I always look forward to Pause because it inspires me to innovate, both in my own work and with more community contributions,” Mike exclaimed. Pause on Error has 24 feature sessions presented by a panel of community-driven speakers from all walks of life, including speakers from FileMaker, Inc. Specifically, Beargie’s session will be geared towards out-of-the-box thinking when designing FileMaker application features. “There’s loads of inspiration that can be taken from web apps,” Beargie said. “With recent improvements to the design surface in FileMaker, it makes it a lot easier to develop similar functions in FileMaker. In my session, we’ll look at how to recreate these inspired features in FileMaker.” Stay tuned for updates after the conference from Mike!
Afficher la totalité du billet
 

How to build an alert in FileMaker 16 in five minutes

In this vlog, we cover building a simple alert (or dialog) in FileMaker 16 in about five minutes. Creating an alert using this tutorial allows for more flexibility, both in terms of appearance as well as follow-up actions available for the end user. The reasons for building an alert into an application vary greatly depending on each individual need, but here are some basic examples: Notifying or reminding the end user about a task assigned to them Notifying the end user about an update to the application Notifying the end user about a message from another user
Afficher la totalité du billet

MainSpring

MainSpring

 

What is an MVP?

My favorite aspect of my job at MainSpring is discussing the myriad of great ideas that our clients have, and helping them turn those ideas into a solution. One of the biggest challenges in this process is helping people understand the value of starting off small—and that starting small is the first step toward achieving the ultimate goal. It’s easy to be entranced by your ideas and want to do everything immediately, but there are a number of definite advantages to starting off with the Minimum Viable Product (MVP).  The beginning is not the end  You’ve probably heard the term MVP used a lot in the technology space, and this largely stems from modern application development methodologies that stress early delivery and flexibility as the keys to delivering great results. The basic premise of an MVP is to deliver the smallest possible feature set while fulfilling the core requirements of the users. Building an MVP comes with the understanding that there will be more work required to achieve the ultimate goal, and that the ultimate goal is best achived through confident organizational buy-in and informed decision making.   Planning through evaluation  Choosing to develop an MVP can seem antithetical to the motivation to build a custom app—you know you want everything, so why not plan for everything from the beginning? The truth is, it’s inevitable that, once the users get their hands on a custom app, the requirements change.  Perhaps the most important reason for building an MVP is to get users involved in the feedback cycle that fuels the requirements for further development. Shifting the focus to requirements for further development is incredibly valuable; therefore, planning based upon the evaluation of what you’ve already built delivers the most valuable features.  Gain adoption through delivering value  Developing an MVP first verifies that the custom app is a viable solution because it only requires a small initial investment, yet it delivers value right away and builds stakeholder buy-in.  Seeing that value upfront is crucial to helping an organization determine three things…  How much they should build  How fast they should build  How they should prioritize what to build  The value produced from the MVP defines the case for further investment and drives the engagement of users who will operate the tool.  Learning how to achieve together  Many of our clients have never worked on a custom app development project, or even used an interactive process to accomplish a project—and it’s definitely a learning experience. One of the overlooked advantages to the MVP approach is that clients are able to learn about the development process through hands-on experience working with developers. At the same time, our consultants get to learn about your team, your company and your industry.  The post-deployment evaluation of the MVP generally serves as a sort of “shakedown cruise” for the whole team. Essentially, we get to evaluate our interactions with our clients and discuss how we can achieve better results together, which allows us to deliver more value in future development. 
Afficher la totalité du billet

MainSpring

MainSpring

 

FileMaker across borders

Through my annual visits to FileMaker DevCon, and my recent trips to the Japan FileMaker Conference and Quebec FileMaker Conference, I’ve met a lot of great people from the worldwide FileMaker community. One thing I’ve found is that many people don’t realize that the use cases for FileMaker can vary as much as the developers making their apps. Therefore, I’m happy to share some of my experiences and things I’ve learned from communicating with developers across the globe. FileMaker data security In Europe, one of the major concerns right now is data security. As this recent thread in the FileMaker Community points out, the new GDPR regulations in Europe will soon take effect. With that comes a greater responsibility for app developers to take a security-forward approach to developing data-driven apps. In America, we have similar approaches for apps that require PCI and HIPAA, but something like GDPR affects a much broader app market. We can learn from this by taking security-forward approaches to our own apps. For instance, we recently conducted internal security testing that lead to the discovery of a flaw in FileMaker WebDirect 13 and 14. That’s why it’s so important to audit your own systems on a regular basis. Contributing FileMaker ideas and issues to the community During my time at the conference in Japan, it was shocking to see and hear that there are so few consulting developers in Japan—so much so, that the conference itself was made up of tracks geared toward business prospects rather than developers. For example, an entire day and track was devoted to Healthcare. The vendors’ exhibits also varied greatly, focusing on vertical market products that were ready for sale, rather than developer tools, like at the North American FileMaker DevCon. Mike speaking at FMCJPAs the small-team FileMaker market grows around the world, so the citizen developer role has risen. A citizen developer is someone that bridges the role between a consultant, or professional developer, and just a regular user. In Japan, a lot of citizen developers are in the FileMaker community. They do lightweight changes on their company’s apps and may not be involved with sharing in the community. While this allows for conferences (like Japan’s) that are more geared toward business, it can lead to equal frustration from the professional and consulting community, as they end up not receiving the community support and innovation that other areas have. In fact, there’s always a large group of Japanese developers that attend FileMaker DevCon in the United States just for that reason. Consequently, it’s important to provide support in the community in a way that equally benefits all levels of developers. FileMaker user groups One last experience I’d like to share is that of user groups. FileMaker recently started promoting and setting up spaces for user groups inside the community, like my Central Ohio FileMaker User Group (COFMUG) space. This is a unique commitment to grow the community around FileMaker and allow for the entire ecosystem to grow. However, when it comes to FileMaker user groups, there is this phenomenon of “super cities”—where certain cities, like in southern California and Montreal, Canada, hold regular meetings with large groups of developers attending. In comparison, COFMUG struggles to keep a 5-10-person monthly attendance average. What’s more, I recently read about a developer that was trying to start a user group in Maine who was also worried about attendance… My hope is that, with these new community user group resources, the borders in our community will start to blur to the point where simply sharing ideas and concerns matters more than the developer’s geography. Growing the FileMaker community There’s a whole, wide world in the FileMaker community. It’s important for consultants, developers and users alike to start taking advantage of its resources. Explore the FileMaker Community site, attend some of the worldwide DevCon events and join as many FileMaker user groups as possible.
Afficher la totalité du billet

MainSpring

MainSpring

 

FileMaker 13 & 14 WebDirect security patch

Even though FileMaker 16 is the current version, MainSpring has supported clients with WebDirect servers since it was released in version 13, and FileMaker server 14 will be supported until September 2018. Because of this, it’s important for us to call attention to the recent security risk that was identified on FileMaker servers 13 and 14. WebDirect security risk discovered Recently, we discovered that due to a lack of a robots.txt file in the WebDirect installation on FileMaker server 13 and 14, the URL of your WebDirect server can be indexed by search engines such as Google, Bing and Yahoo. This could unintentionally grant remote users the ability to visit your WebDirect homepage, and potentially gain access to files in an unexpected way. A robots.txt file is a simple text file that asks any “search bot” that’s crawling a page or archiving information to follow a specific set of rules. While the robots.txt can be ignored by malicious bots, most modern search engines will respect those rules. In FileMaker Server 15+, the server configuration already contains the rules for turning off indexing by default, but you can still install the robots.txt file if you want. How to install the WebDirect security patch So, how do you add this patch? Simply create a robots.txt file in the following directory: Mac: HDD/Library/FileMaker Server/HTTPServer/conf/ PC: C:/Program Files/FileMaker/FileMaker Server/HTTPServer/conf/ Folder path on a windows serverInside of your robots.txt file, input the following code: User-agent: * Disallow: / robots.txt file in the folderNow, save, and you’re finished! This would be a good time to install any updates, and restart your server, as well. Also, it’s important to note that, if your server address was already indexed on a search engine, it may take a few weeks for the bots to revisit your page and refresh their directory. Additional ways to secure your WebDirect server So, here are some other steps you may want to do in order to secure your server… Disable guest access for all files, or at least perform a security check to make sure the guest account has severely limited access Enable the server setting “Show only files for which each user has access to”. This will require a user to provide their username and password in order to view the WebDirect homepage. Make sure to check that none of your files are hosted with the default “admin” account with no password. If so, we recommend setting a strong password and changing the account name from admin to something else. Install an SSL certificate if you do not have one already Other security settings in FileMaker server
Afficher la totalité du billet

MainSpring

MainSpring

 

How to add value to your FileMaker app using progressive lists

One of the more common requests we get when building custom applications is the addition of a progressive value list. A progressive value list is something you may see more often than you realize—like when you’re entering an address into your car’s GPS system. Have you ever wondered how it’s able to limit the names of streets based on the house number or the state you’ve entered? Now, let’s break down this concept a little more… What is a progressive value list? A common use case of the progressive value list is when you have a set of fields whose value lists are dependent on previous selections that are mutually exclusive. To explain this further, we’ve created a sample file for you to follow along with using the common scenario of ordering from a menu… How to build a progressive value list in FileMaker In the sample file, our first selection includes a category of proteins to select from. Then, once that choice is made, we’ll choose the protein itself and, finally, the method of preparation. Each selection we make will determine the options available to select for our next choice. In order to display the correct set of options for the previous selection, we’ll need to utilize the option for value lists labeled “Include only related values starting from”. This allows us to set what the first table occurrence evaluates. Simply put, it allows us to dictate whether something is considered related and, thus, will show up in our progressive value list. In our file, we named this the Dinner table occurrence. Next, we create two table occurrences for selection purposes, ProteinSelect and PreparationSelect and relate them to the Dinner table occurrence. From there, we select the category that will produce the available options in the next dropdown, which, in our sample, is the ProteinSelect. Selecting the category sets that field with the ID for the category, which allows the display of only those proteins who have the same value in their ID_Category field to show up. The same goes for our methods of preparation. When we select the protein, we set the ID into the field, which will display only those preparations with the same value in their ID_Protein field as our selection. Finally, in order to ensure the user follows the correct order for selections, we need to set “hide conditions” on our fields so that the proceeding field only becomes available for entry after a selection has been made. Doing so allows us to ensure that the user will always have a valid set of values to select from. Self-order kiosks and apps are becoming increasingly popular. Talk to your development team today about incorporating progressive value lists into your custom app.Adding value (and automation) to your FileMaker custom app Adding a progressive value list is incredibly useful to help usher your users through an automated workflow by setting constraints on what information is available and when. Not only does it cut down on human error, it also allows your users to become more productive by limiting the amount of time needed to manually sort through information. At the same time, this technique involves very little overhead from a development point of view, so this could be an easy, low-cost project for you to implement into your custom app. If you’re interested in talking about this    project further, book a time to speak with our Business Development Manager, Chuck Melton.  
Afficher la totalité du billet

MainSpring

MainSpring

 

The top 15 FileMaker features over 15 years

Recently, our Central Ohio FileMaker User Group (COFMUG) celebrated 15 years of gathering together to network, learn, grow and develop FileMaker. In honor of the milestone, we looked back at the top 15 advancements in FileMaker from the last 15 years. (You can watch the meeting recording here, but I also wanted to summarize our meetup with a blog post covering the 15 advancements). So, here’s COFMUG’s chronological list of the top 15 features added to the FileMaker platform over the past 15 years. Multi-table files & multi-predicate relationships April 2004, FileMaker 7 FileMaker 7 was a monumental release that changed the course of history for FileMaker development. Before FileMaker 7, which is sometimes referred to as the “dark ages”, data structure required separate files for each table and complex “tricks” to get relationships to work between those files. FileMaker 7 fundamentally changed the way we build FileMaker files and opened the door for even more rapid application development. Custom functions April 2004, FileMaker 7 Power to the people—or at least to the developers. The ability to create custom functions or even the ability to chain multiple functions together in a stored manner for processing was a leap forward (and a large gap filled in FileMaker’s functionality). FileMaker 7 again! Let() April 2004, FileMaker 7 Paired with custom functions, the Let() statement quickly became one of the most important and flexible functions in the FileMaker calculation engine. It made readable, functional code out of previously jumbled, nested functions; it’s a must have for any FileMaker developer to master. Cumulative security features FileMaker 7+ User accounts Grouped privilege sets LDAP and AD integration SSL Certificates Internal and external file encryption Server manager groups …The list goes on as FileMaker has grown its security features to meet modern security demands. Variables August 2005, FileMaker 8 It’s hard to imagine FileMaker development without variables, but, before FileMaker 8, they didn’t exist. The idea of storing temporary values without requiring fields was another change made possible through the basic structure overhaul in FileMaker 7. ESS July 2007, FileMaker 9 ESS really put FileMaker on the map as a serious app development product. Before ESS, kludgy, frontend systems like Crystal Reports and FoxPro were among the only ways to “easily” put an interface on top of databases like SQL and Oracle. With FileMaker’s easy user interface (UI), search and reporting features, ESS is a match made in heaven for making quick reports and interfaces on top of complex data systems. ESS was also recently expanded to support new DB formats like DB2 and PostgreSQL. Quickfind March 2010, FileMaker 11 An underrated but powerful feature is Quickfinds. Essentially, it is a “google-esque” search box that will search multiple fields for a value without needing to construct complex query systems. This addition made training users much faster, as it meets the immediate needs for most basic searching. FileMaker Go July 2010, iOS 4, FileMaker 11 FileMaker Go has brought mobile development into the hands of visual-driven developers, removing the need for complex coding to take an idea and make it into an app. With the recent iOS SDK’s, FileMaker’s idea to iPad offering and all of the updates over the years, FileMaker Go has seen significant improvement (and it’s only getting better). As of August 2017, FileMaker Go has been downloaded over 3 million times from the app store. Themes April 2012, FileMaker 12 Good UI design is at the core of any custom app. And, with the introduction of themes, FileMaker took a monumental step forward in rapidly creating beautiful custom software. This fundamental UI change also made it possible to roll out future products, like FileMaker WebDirect, custom themes, and more granular design surface tools. Insert From URL April 2012, FileMaker 12 Integrations that were relegated to kludgy “web-scraping” to integrate, became functional and approachable overnight with this new feature. Since rollout, a full-featured set of cURL options have made this the way to consume external APIs in FileMaker. Modernized Container Fields April 2012, FileMaker 12 One of the things that FileMaker does very well is adding the ability to store files as record data. The ability to display those file contents in a view in just a few clicks makes it even more powerful. The changes brought in FileMaker 12 made the delivery of file streaming even easier, and it’s grown since then in both security and functional improvements. Perform Script on Server (PSoS) December 2013, Filemaker 13 When working on a local network, speed is never really an issue. Yet, as work teams began to grow further apart, the amount of data streaming to remote client computers started to create a bottle neck for good performance in custom apps. With the introduction of PSoS, however, high level performance actions were made available to offload “heavy” data processing actions to streamline performance for remote users. FileMaker WebDirect December 2013, FileMaker 13 While the older IWP and PHP Site Assistant features provided some automated processes to get FileMaker layouts and data to the web, they didn’t come close in terms of look, form and function of FileMaker Pro. With web app markets growing every year, FileMaker made a commitment to keep pace and offered a fully functional thin client that required no web coding experience and retained most of the features of FileMaker Pro. The “create once, deploy anywhere” approach is still one of the largest selling points for FileMaker. Since the release of FileMaker WebDirect, continuous improvements to functionality and performance have been made, including releasing AndroidOS compatibility. FileMaker Cloud September 2016, FileMaker 15 It’s a lean, mean, cloud-hosting machine. FileMaker cloud has become a fully featured server product, with many of the features enjoyed by the full-fledged FileMaker Server for Mac and Windows, allowing for lower cost Linux cloud instances on Amazon’s EC2 Cloud. Plus, with Apple announcing the deprecation of OSX Server Edition, this came at the right moment as an easy-to-setup product to switch to. Data API May 2017, FileMaker 16 Connecting FileMaker has traditionally been accomplished using other data sources inside of FileMaker. Connecting other services to Filemaker, however, has either been relegated to the oldest standard in ODBC/JDBC, or via proprietary APIs in PHP, XML (or even CDML back in the day). The Data API is the first leap toward offering a modern, standardized API method that is generally available across the majority of app development platforms used today. So, not only is FileMaker making development accessible to a large crowd, it now includes fully functional APIs in the drop of a hat, as well—all without the need for writing complex code or setting up complicated server installations. Looking ahead to FileMaker 17 Be sure to subscribe to our FileMaker Community blog to stay up-to-date on the latest product features, including the release of FileMaker 17 in the coming months. Did we miss something? Comment below to keep the conversation going!
Afficher la totalité du billet

MainSpring

MainSpring

 

Determining ROI for your custom application

One of the most critical considerations when embarking upon a new custom software development project is the return on investment (ROI) achieved from investing in the project. Quantifying the value for any project can be a complex task, but, at a high level, it comes down to three variables with a varying composition by case: Reduced cost Time savings through efficiency Decreased direct costs Increased quality Increased revenue New services / capabilities Increased sales bookings Project cost Direct costs Support and maintenance ROI calculation The basic calculation is (Reduced cost + Increased revenue) / Project cost = ROI. This helps us understand how quickly a project will pay for itself. Let’s consider a common scenario for custom application and calculate the ROI: An engineering company provides a service to their clients which involves performing inspection and providing inspection reports to their client. They perform approximately 100 inspections per month. Each inspection takes approximately two hours to perform, but the creation of the report is a laborious process that requires the engineer to transpose handwritten notes into a Word document, insert photos from their digital camera, and submit the report to be peer-reviewed and formatted before it is delivered to the client. The writing and formatting process takes an additional four hours per report. Plus, due to the variety of client sites, each inspection may need to include some different criteria. That variability leads to the occasional human error that requires a reinspection to be performed. This occurs three times per month on average. The engineering company receives a quote for an inspection tool that will allow them to enter their inspection data into a mobile device that has the correct inspection criteria loaded for each site, and allows them to insert photos directly. This tool will also automatically format each report, and provides a peer review system. The time estimated to perform all of the functions of the inspection and to generate the report is a total of four hours. The tool is estimated to cost $25,000. With an hourly cost of $50 for engineers, the total cost to perform 100 inspections, and 3 reinspections each month is $30,900 ($50 hourly rate x 6 hours/inspection and report x 103 total inspections/month). However, the cost to perform those same inspections utilizing the new tool would be $20,000 ($50 hourly rate x 4 hours/inspection and report x 100 inspections/month). By reducing the process by two hours and eliminating the possibility for human error resulting in re-inspection, that equates to $130,800 in savings for a $25,000 investment, which is an ROI of 523% over the course of a year. Find the right strategic partner for your organization MainSpring prides itself on being a strategic partner that learns about your business in order to identify how technology can be applied to help you achieve your goals. Our consultants always have your bottom line in mind, and they’ll work directly with you to identify technological improvements that will have substantial impact.
Afficher la totalité du billet

MainSpring

MainSpring

 

MainSpring developer to speak at Quebec FileMaker Conference

FREDERICK, MD – This month, MainSpring Application Developer and two-time FileMaker Community Award winner Mike Beargie will travel internationally to speak at Quebec’s 2018 FileMaker Conference (CQDF). CQDF allows participants to deepen their knowledge of the FileMaker platform, share experiences and network with other users and developers from around the world. The conference, held in Montreal, Quebec, Canada, will begin on March 15 and conclude on March 16. “CQDF is an awesome conference,” Beargie said. “Not only is the time and location ideal for the Midwest and east coast, but it also has a single track of sessions, meaning that all attendees will be in the same room experiencing the same content.” This slight change in schedule lessens the stress of choosing the right session, and allows attendees to have a more positive learning experience. Beargie’s vast experience and commitment to bettering the FileMaker community made him a clear candidate to speak at CQDF; he was one of only 14 people selected from the international community of FileMaker developers to speak at the conference. As a senior developer, his speaker session is designed to help beginner developers reach the next level in programming FileMaker’s calculation engine. “FileMaker generally makes developing really easy, but the calculation engine is where things start to get more difficult,” Beargie explained. “My session is geared toward those beginner or intermediate developers that want to deeply understand calculations so they can write clean and useful functions.” When asked about language barriers, Beargie feels well-prepared. “I had the chance to deliver a presentation in French to the Montreal FileMaker User Group a few years ago,” Beargie said. “I’m really looking forward to speaking in the city again…Montreal is a wonderful place with a great compliment of FileMaker developers.” About MainSpring MainSpring, Inc., celebrating its 25-year anniversary, is an IT strategy and consulting firm that arms organizations with the strategy, tools and resources to impact their mission. Founded in 1993, MainSpring is headquartered in Frederick, Md., with offices in Towson, Md., Florida, Ohio, Washington and Wisconsin. The firm supports a wide range of clients including businesses, nonprofits and government agencies such as the Department of Defense.
Afficher la totalité du billet

MainSpring

MainSpring

 

How to determine the right metrics for meaningful reporting

What makes a good metric? In terms of reporting, metrics are simply the values that are assessed. For instance, a monthly sales report might include total sales divided by salesperson. This metric allows you to readily identify how each member of your sales team is performing, which in turn helps you make decisions to improve sales. So let’s say you’ve just finished that cross-tab report you’ve been working on. It’s pretty good, but you’ve recognized there’s some room where additional metrics would help substantially. Before you start calculating away, you begin to ponder—which ones would make a difference? While there’s a great deal of nuance for each situation, here are a few considerations that could benefit you in your search to create more meaningful reporting… Is the metric simple to implement? It’s easy to get so involved in curating a report that you lose sight of the effort it takes to produce it. Often, the metric’s value is worth less than the time it took to create it. That’s why it’s necessary to employ a simple method to gather data that requires little-to-no overhead to maintain. In your monthly sales report example, it would be a rather small matter to include an additional metric—your top selling products for the month. This requires no further action from your salespeople to provide the information, as well as no additional maintenance to include in the report. If, however, the desired metric requires extra work from the sales team to track and process, then it may warrant a reevaluation of the importance of the metric. Does the metric serve as a guide for future action? There’s a big difference between information that’s simply “nice to know” and information that has the potential to change how you or your organization acts. A metric should provide you with insight into your business practices; it informs you about trends in your data, which should help guide your strategic decisions. In your monthly sales report, the total sales are broken down by each salesperson, so you can determine which of your salespeople may need additional training if they’re falling behind in their numbers. Looking forward, you know you’ll want to focus on training, which allows you to budget and plan accordingly, with the end goal being that your salespeople in training ultimately improve their total sales. Therefore, if a metric isn’t helping you make these kinds of decisions, it may indicate that you’re tracking the wrong kind of information. Is the metric derived from concrete business practices? Identifying areas of your business to develop metrics for ensures that the data you’re collecting is actionable. It’s the whole reason reporting is done! It empowers managers to evaluate and, when necessary, adapt, scrap or update business practices. Let’s break it down to an actual employee activity, for instance…sales by salesperson. By selecting this kind of metric, you naturally move from asking, “What do we know?” to “What do we do about it?“, with clear areas of focus. By contrast, if you select a more nebulous metric, like the increase percentage in a certain type of product sales, it puts you in a position where you must determine what that means, and then figure out if you want to, or can, do anything about it. Selecting the right metrics There’s an endless number of metrics that could potentially have value when creating a report. For instance, in your monthly sales report, you may decide you want to include last year’s monthly report for comparison, or the time spent with each customer compared with the total sale. Maybe you want to analyze repeat customers’ spending trends, too—the possibilities are endless. Nevertheless, it’s important to balance the metrics you want to report on with the level of effort exerted to obtain the information, the data’s purpose, and your overall ability to influence or incite change. We’d love to hear from you! Comment below with your own ideas for business reporting, or let us know if we can assist you with reporting in any way.
Afficher la totalité du billet

MainSpring

MainSpring

 

Paper prototyping 101

When developing a new custom application for your team (or refining an existing one), removing a paper process to save time typically becomes one of the goals that you work towards. But, what if I told you that there’s a paper process you could add to your development that would actually reduce the amount of time you spend perfecting your app? And what if I also told you that just by simply using a scratch pad, bar napkin, or note card before ever touching the keyboard could result in a magnitude of difference in the time and money spent to hone your app? Check out these four reasons for implementing a paper process in your development cycle… 1. Reduce iteration time and cost It’s quicker (and cheaper) to go back and forth with clients, sketching layout designs rather than doing the development and scheduling a review meeting, just to have the client ask you to significantly modify or redesign what you had. This article from the Nielson Norman Group hits it right on the head: “Forty years of software engineering experience uniformly indicates that it’s much cheaper to change a product early in the development process than it is to make changes later in the process. The most common estimate is that it’s 100 times cheaper to make a change before any code has been written than it is to wait until after the implementation is complete. So: Ten times the impact if you discover a needed design change early, and 100 times cheaper to make the change. The experience from both fields is clear: early is much better than late.” 2. Discover business process insights The freeform sharing of workflow processes will often unveil a hidden requirement that neither you nor the client may have been aware of, and you might not have thought to ask about until you were already working on the app. 3. Cultivate more ideas A quicker, cheaper, iterative process naturally results in many more concepts being generated. Paper prototyping lets you 4. Improve meeting morale Using paper prototypes When you immediately convey the idea, it helps create a more positive, high-energy meeting. You’re going to be spending significant time making sure that you‘re getting exactly what it is that you need. Due to the nature of the custom app development business, it’s often easy to dismiss or forget that some parts of the process can work better on paper. Just remember, the quicker you can identify your requirements, the faster you’ll be on your way!
Afficher la totalité du billet

MainSpring

MainSpring

 

How to budget for custom app maintenance

Now that you’re armed with an overview of the types of custom app maintenance, it’s time to consider how to budget for the somewhat murky mix of known and unknowns that make up custom application maintenance. Our recommendation for support budgeting comes down to three factors: scale, complexity, and investment. The scale of an application refers to the number of different functions and features an application has. It’s typically reflected directly in the initial development budget. Application complexity is a function of the intricacy of the features developed and their susceptibility to reactive maintainence. Integration with an accounting application is an example of a complex feature. Investment is the budgeted amount for proactive maintenance to improve the system beyond the initial scope. Here are three typical support scenarios showing the scales that we use when making budget recommendations: Scale Complexity Investment Budget $8,000 Low – 5% Standard – 25% $2,400 $12,000 High – 15% Low – 10% $3,000 $35,000 Medium – 10% High – 35% $15,750   Beyond budgetary advice and technical expertise, MainSpring also offers our clients the option to enroll in a support program with a scheduled maintenance check-in to ensure that issues are addressed and goals are met. Based upon our knowledge of your business and your custom application, we create an annual support plan with a schedule that fits your needs. Coupling this with a discounted support block of the appropriate size ensures your maintenance needs are being met in a budget-friendly way. Working with your development team consistently is the key to putting new ideas into action and making sure your custom application will continue providing return on investment (ROI) for years to come. If you’re ready to start the conversation about your custom app, book a meeting with me and let’s chat.
Afficher la totalité du billet

MainSpring

MainSpring

 

How to care for (and feed) your custom applications

Congratulations! After lots of hard work, your innovative, new, custom application has been rolled out, and you’re finally achieving the return on investment (ROI) you envisioned when this fully realized dream was but a nascent glimmer given birth by hours of staring at spreadsheet. You have a feeling of accomplishment, your users are excited and productivity is through the roof. But you still find yourself wondering: what’s next? In order to achieve the most value out of the tools you’ve invested in, you need a plan to support them. There are four primary types of support to plan for—two reactive and two proactive. This maintenance helps increase the value of the tool that you’ve already invested in. The two types of proactive maintainence are perfective and preventative. On the reactive side, we have corrective and adaptive maintenance. Reactive support Corrective maintenance Corrective maintainence is, quite simply, fixing a bug. Your development team should give these issues the highest priority. If, for example, you completed a software development project with MainSpring, this type of maintenance is included in our warranty, and we’ll correct those issues inside of that warranty period. While we have rigorous processes to ensure that software is tested, it’s good to know that the warranty is there to fall back on just in case something is found after deployment. Adaptive maintenance Adaptive maintenance is an issue that’s caused by an external change to the system environment that your application lives in. Typical examples of an adaptive issue would be a hardware or software change in the hosting environment, or a change in an API used for integrating with another system. While the specific events can’t be planned for, developers can put a plan in place to minimize the impact of any issues that arise. Proactive support Perfective maintenance Perfective maintenance is, essentially, the continued investment in the functionality of your custom application based upon the experiences and ideas from users after roll out. This is the most exciting type of maintenance, as it’s when you really start to reap the benefits from having built a custom application. Your users are providing valuable feedback that you want to implement, so providing a budget and process to incorporate this feedback is invaluable. Preventative maintenance Preventative maintenance is similar to adaptive maintenance, but more focused on aspects of the system that users may not see. Examples of this would be changing a data model to increase long-term stability, or developing a more efficient way to execute a complex procedure. These are the changes that make the system less expensive to maintain, better performing and more stable. Stay tuned for my follow-up blog on how to budget for custom application maintenance.
Afficher la totalité du billet

MainSpring

MainSpring

 

MainSpring promotes new Development Manager

FREDERICK, MD—This month, MainSpring promoted Skylar Robaczewski to Development Manager. Robaczewski will oversee MainSpring’s application development strategy, operations and growth. “Skylar has shown true leadership and ownership as a site lead, and has been instrumental in the redesign of the development team,” said MainSpring President Tom Keller. “His focus on process and proactive project management style has allowed for clear planning and forecasting as we move forward.” Robaczewski joined MainSpring in 2016, bringing five years of experience as a business analyst and scrum master. He previously served as MainSpring’s Application Development Project Manager, helping instill improved operational structure and accountability. “I’m excited for the possibilities that’re on the horizon for MainSpring’s development team,” Robaczewski said. “I’m even more excited to be part of such an innovative and award-winning team of FileMaker experts and application development gurus.” About MainSpring MainSpring, Inc. is an IT strategy and consulting firm that arms organizations with the strategy, tools and resources to impact their mission. Founded in 1993, MainSpring is headquartered in Frederick, Md., with offices in Towson, Md., Florida, Ohio, Washington and Wisconsin. The firm supports a wide range of clients including businesses, nonprofits and government agencies such as the Department of Defense.
Afficher la totalité du billet

MainSpring

MainSpring

×