Go Forth and AppSync!

Mat Warger API Development, Articles, AWS, Development Technologies & Tools, GraphQL, JavaScript, REST 1 Comment

In a previous post, we discussed the basics of GraphQL and how it can be a great REST API alternative. In this one, weโ€™ll see how AppSync can be more than just a great API alternative โ€” it gives you a soft landing into the world of GraphQL.

Recall our Game API example? Letโ€™s start with the basic type of a game. Follow along and we can implement a simple schema in AppSync together….

Reading and Writing from Excel in Spring Batch

Rik Scarborough Articles, Development Technologies & Tools, Java, Spring, Spring Batch, Tutorial 4 Comments

We have discussed many different ways to read and write data in Spring Batch. The framework comes with quite an assortment of Readers and Writers that can be used directly or reused in some manner. Most of the time, the requirements consist of reading the data from some type of text file or database.

So what happens when the business we are supporting asks for something out of the ordinary, such as reading an Excel file and outputting the data to another Excel file? Typically the off-the-cuff response would be, โ€œcan you convert it to a CSV or other delimited text file?โ€ Or โ€œYou know, Excel will read a CSV file just fine.โ€ Sometimes that works, and sometimes the business requirements do not allow that type of flexibility.

Consider this scenario; in these days of Cloud and other online computing, the input file is likely created by a server that the company has no direct access to as far as programming. The file it creates is in one format, Excel. The output of your process has to go before several executives or other business clients and needs to be formatted in a professional looking manner. Adding a manual process to import a CSV and format it diminishes the value of using Spring Batch.

For the sake of the honor of the coding profession, you agree to the requirement to read and write from an Excel file directly. Now, how do you do that?…

Getting Started with Xamarin Forms and Prism

Ryan Nguyen .NET, Articles, Development Technologies & Tools, Mobile, Xamarin 3 Comments

In this blog, Iโ€™ll show you how easy it is to create an Android and iOS application using Xamarin Forms while utilizing Prism.

What are Xamarin Forms?
Xamarin Forms is a platform that allows developers to create native Android, iOS, and Windows applications while using the beloved C# programming language.ย 

An attractive feature of Xamarin Forms is that it uses a shared C# codebase to create a native user interface specific to their platform. Out of the box, Xamarin provides large collections of controls to get started.ย It also has the ability to access native platform features, such as camera access, GPS, text to speech, etc, by using theย Dependency Service.

What is Prism?
According to the Prism website, Prism is defined as โ€œa framework for building loosely coupled, maintainable, and testable XAML applications in WPF, Windows 10 UWP, and Xamarin Forms. Prism provides an implementation of a collection of design patterns that are helpful in writing well-structured and maintainable XAML applications, including MVVM, dependency injection, commands, EventAggregator, and others.”ย In other words, Prism helps users to write better code….ย 

See Keyhole at Nebraska.Code() 2018 – Sponsoring & Speaking

Keyhole Software Articles, Community, Company News, Educational Event, GraphQL Leave a Comment

Keyhole Software is excited to once again be a Gold sponsor of the Nebraska.Code() Conference.

The 2018 conference is Wednesday through Friday, June 6th-8th with excellent technical talks on the schedule. Wednesday will consist of half and full-day workshops, while Thursday and Friday will consist of 100+ one-hour breakout sessions. This year, the conference has moved to the Mid-America Center in Council Bluffs, IA, right across the river from Omaha, NE.

Sessions To Watch
Numerous conference sessions will be led by Keyhole Software team members on a myriad of technical topics. Make sure to attend the following Keyhole sessions when setting your own personal conference calendar…

Rethinking REST Practices: An Introduction to GraphQL with AWS AppSync

Mat Warger API Development, Articles, AWS, Cloud, Development Technologies & Tools, GraphQL, JavaScript, Programming, REST Leave a Comment

The basic premise of data transfer and involves requesting and receiving lists. This is simplistic, but it gets to the root of why weโ€™ve developed the technologies and best practices to pass data using web services. RESTful APIs have grown to serve the needs of numerous individuals, startups, and enterprise companies across the world. They are useful, productive, and the concepts surrounding them are relatively standardized. If you donโ€™t know how to create one, you can quickly find information building a great API that can grow to fit your needs. Thatโ€™s when things get complicatedโ€ฆ

If you start digging into REST, youโ€™ll realize thereโ€™s quite a bit more to throwing lists. There are common threads that many people encounter when developing an API, and you begin to encounter many of the same questions so many others have before, such as: How strictly should you adhere to the principles of REST? How should you handle versioning? Should you bother? How do you want to structure your objects? Are users able to easily figure out what API endpoints are available and how they should be used?

There are many ways approach these. It boils down to communicating the structures that a given endpoint will return or accept. The cascade of questions that results from the choices made here will ripple through from the back-end to the client. The secondary issue is that these questions and choices are not at all uncommon. There are answers to these that follow Best Practices. But there is still plenty of ambiguity involved when attempting to build a flexible API that works well. These are the Commonly Tolerated Situations.

If you hadnโ€™t already guessed, there is a solution that frees us from the dogma of REST and allows us to solve all these issues in a declarative, powerful, and fun way. That solution is GraphQL. In this blog, Iโ€™ll provide an introduction to the GraphQL specification with code examples…