DJ Adams

Blog posts tagged "javascript"

  1. Notes on simple agentification of a CAP service

    A short note-to-self on what I did when trying out the new agents plugin for CAP.

  2. Modifying queries, replacing the WHERE clause

    Here's a quick post to explain how to modify existing query objects in CAP, specifically using the CAP Node.js cds.ql API.

  3. A modern and clean Neovim setup for CAP Node.js - configuration and diagnostics

    In this post I describe my re-worked basic setup for working with CAP Node.js in Neovim, focusing on the configuration and digging into the LSP based diagnostic facilities.

  4. Point free coding and function composition

    In this post I explore and show examples of the concepts of point free coding, of chains of functions through which data flows, and of function composition.

  5. FP, function chains and CAP model loading

    Understanding functional programming approaches, no matter how trivial, can help in other areas. Here I explain how being comfortable with function chains helped in working out why a required (but unused) service was being loaded into the overall CDS model in a CAP project.

  6. Array.prototype.reduce and the optional initial value

    Today I learned about the subtlety of the optional initialValue parameter for the Array prototype's reduce method in JavaScript.

  7. CAP Node.js plugins - part 3 - writing our own

    This blog post accompanies part 3 of a three part series where we explore the CDS Plugin mechanism in CAP Node.js. This post is about using the knowledge we've gained to write our own plugin.

  8. CAP Node.js plugins - part 2 - using the REPL

    This blog post accompanies part 2 of a three part video series where we explore the CDS Plugin mechanism in CAP Node.js. This post is about discovering and exploring service details with introspection.

  9. CAP Node.js Plugins

    Here's a summary of the resources relating to the CAP Node.js Plugins series.

  10. Creating the new Tech Aloud intro and outro music

    Reviving my Tech Aloud podcast and creating new intro and outro music with JavaScript.

  11. CAP Node.js plugins - part 1 - how things work

    In this first of a three part series of blog posts accompanying a corresponding video series, we explore the CDS plugin mechanism in CAP. This post is about understanding how the plugin mechanism works.

  12. reduce - the ur-function

    Why I think of reduce as the ur-function, a primitive building block from which other functions like map and filter can be constructed.

  13. Highest value in JS - different ways

    Exploring different ways to find the highest value in a JavaScript array as part of the Developer Challenge.

  14. Turning an OData expand into a cds.ql CQL query with a projection function in CAP

    Turning an OData expand into a cds.ql CQL query with a projection function in CAP.

  15. Enabling document fragment links for headings in SAP Community blog posts

    Creating a bookmarklet to enable document fragment links for headings in SAP Community blog posts.

  16. Defining a custom 'after' handler in CAP with 'each'

    Exploring the special behaviour of using the each parameter name when defining an after handler in CAP.

  17. CAP, CORS and custom headers

    Digging into CORS support in CAP, covering CORS headers, preflight requests and custom header handling.

  18. Solving the SAP TechEd Easter Egg on the Web

    Solving the SAP TechEd 2023 Easter Egg, a Node.js puzzle found at the event in Bengaluru.

  19. Understanding jq's reduce function

    Understanding jq's reduce function by relating it to the equivalent in JavaScript.

  20. String.prototype.replace() can take a function

    You can use a function to dynamically provide the replacement value in a JavaScript replace operation.

  21. SAP Community Coding Challenge 2 - Update

    Providing an update on the progress of the second SAP Community Coding Challenge.

  22. SAP Community Coding Challenge Nr.2

    Announcing the second SAP Community Coding Challenge with a fun puzzle to solve.

  23. Computed field example in CAP

    Showing one way of using computed properties in CAP using CDS and service events in Node.js.

  24. The Observer's Book of JS Style

    Reflecting on JavaScript coding style through the lens of an Observer's Book approach.

  25. ES6, reduce and pipe

    In learning about functional programming, one thing that's worked for me is to take my time, and not rush over fundamental concepts. In fact, like a good beer or whisky, a fundamental concept is something to savour, to enjoy at a leisurely pace.

  26. Monday morning thoughts: dynamic language

    Musings on a particular function definition in JavaScript, and how it represents beauty and practicality in equal measure.

  27. Monday morning thoughts: growth is upwards

    In this post, I think about how we grow, how we improve ourselves by adding to our knowledge and experience, and consider that our growth is sometimes uphill but almost always rewarding.

  28. Functional programming - baby steps

    A gentle introduction to some core concepts in functional programming for those just starting out.

  29. Google Cloud Functions + Sheets + Apps Script + Actions On Google = WIN

    Combining Google Cloud Functions, Sheets, Apps Script and Actions on Google into a perfect storm of technology.

  30. F3C Parts 9 and 10 - Functors

    Exploring functors as part of my FunFunFunction Companion series.

  31. F3C Part 8 - Promises

    Exploring promises as part of my FunFunFunction Companion series.

  32. F3C Part 7 - Recursion

    Exploring recursion as part of my FunFunFunction Companion series.

  33. F3C Part 6 - Currying

    Exploring currying as part of my FunFunFunction Companion series.

  34. F3C - A FunFunFunction Companion Series

    Introducing my FunFunFunction Companion series on functional programming in JavaScript.

  35. F3C Part 5 - Closures

    Exploring closures as part of my FunFunFunction Companion series.

  36. F3C Part 4 - Reduce advanced

    Exploring advanced uses of reduce as part of my FunFunFunction Companion series.

  37. F3C Part 3 - Reduce basics

    Exploring the basics of reduce as part of my FunFunFunction Companion series.

  38. F3C Part 2 - Map

    Exploring the map function as part of my FunFunFunction Companion series.

  39. F3C Part 1 - Higher-order functions

    Exploring higher-order functions as part of my FunFunFunction Companion series on functional programming.

  40. FOFP 2.1 A look at filter

    Looking at the filter higher-order function as part of the fundamentals of functional programming.

  41. FOFP Fundamentals of functional programming

    Notes and resources for an introductory lecture on the fundamentals of functional programming at Xaverian College.

  42. FOFP 1.5 Creating functions

    Creating and composing functions as part of the fundamentals of functional programming.

  43. FOFP 1.4 A different approach with map

    Introducing the map function as a different approach to list processing.

  44. FOFP 1.3 Some basic list processing

    Exploring basic list processing with imperative and functional approaches.

  45. FOFP 1.2 Trying things out

    Setting up an environment to try out functional programming concepts interactively.

  46. FOFP 1.1 Introduction

    Introducing the fundamentals of functional programming with a definition and some context.

  47. Quick HCP title hack with the Navigation Manager

    Hacking the HCP cockpit title with the Navigation Manager using the Chrome Developer Tools.

  48. Building blocks of language, structure and thought

    As I travel on my path to perhaps what I deem as some sort of enlightenment, back in time via Clojure to one of the great ancestors of language, structure and computational thought (Lisp), I continue to come across a simple theme.

  49. Impromptu JS session at UKISUG15

    Running an impromptu JavaScript session at UKISUG15 to introduce the language behind Fiori.

  50. Coffee-time JavaScript recreation

    In preparing for co-presenting a hands-on session at SAP TechEd EMEA this coming week in Barcelona, I came across a chunk of JavaScript. In this post I try to improve it with robustness and immutability in mind.

  51. Breathing through the reduction meditation

    In this post I look even more closely at a simple Clojure implementation of a reduce function.

  52. A meditation on reduction

    Looking at a version of the reduce function written in Clojure, from Do Things: a Clojure Crash Course.

  53. An introduction to sap.ui.define

    30 Days of UI5 - day 24 by DJ Adams.

  54. Merging lists with UI5

    30 Days of UI5 - day 22 by Chris Choy.

  55. MVC - Model View Controller, Minimum Viable Code

    30 Days of UI5 - day 18 by DJ Adams.

  56. Base Classes in UI5

    30 Days of UI5 - day 12 by Thilo Seidel.

  57. Expression Binding

    30 Days of UI5 - day 2 by DJ Adams.

  58. JavaScript Do's and Don'ts for UI5

    30 Days of UI5 - day 7 by DJ Adams.

  59. JSON List Binding and maps

    Exploring JSON List Binding and the JavaScript Map object in the context of a UI5 app.

  60. Why I'm Staying Close to UI5

    Explaining why I'm staying close to UI5 in response to an article about staying clear of it.

  61. Atom, Snippets, Tabs and CSON parsing

    Debugging a CSON parsing error in my UI5 snippets package for the Atom editor.

  62. Fiori App Data into a Spreadsheet? Challenge Accepted!

    Extracting data from the SAP Fiori App Reference Library into a Google Spreadsheet using OData and Apps Script.

  63. Creation & Reload of UI5 UIs in the Chrome Developer Console

    Demonstrating how to create and reload UI5 UIs directly in the Chrome Developer Console.

  64. Scratching an itch - UI5 Icon Finder

    Building a UI5 Icon Finder app to search the vast library of icons available in UI5.

  65. Keyed vs Non-Keyed Root JSON Elements & UI5 Binding

    Exploring the difference between keyed and non-keyed root JSON elements in UI5 data binding.

  66. Firebase and SAPUI5

    Exploring Firebase as a backend-as-a-service in the context of SAPUI5 and realtime data.

  67. JSON and Other Animals - talk at Manchester jQuery Meetup

    Presenting on JSON, AJAX and JSONP at the Manchester jQuery Meetup at MadLab.

  68. Hacking the Delicious extension for Chrome

    Hacking the Delicious bookmarking extension for Chrome to fix some annoyances after switching from Firefox.

  69. Google Visualization API: Manchester GTUG Talk

    Presenting on the Google Visualization API at the Manchester Google Technology User Group meetup.

  70. Not your father's SAP

    Some thoughts following the Innovation Weekend 2010 at SAP.

  71. Scratching an itch - Magic The Gathering card info

    Scratching an itch by building a quick tool to look up Magic The Gathering card information.

  72. A return to the SDN community, and a touch of Javascript

    Returning to the SDN community after six years and reflecting on how it has grown.

  73. OssNoteFix script updated for Greasemonkey 0.6.4 and Firefox 1.5

    Updating my OssNoteFix Greasemonkey script to work with newer versions of Greasemonkey and Firefox.

  74. Hacking the SAP service portal to make OSS notes better

    Deploying Greasemonkey to fix a long standing issue with OSS Notes at SAP.

  75. Postcode bookmarklet

    We’ve been spending time recently looking at property in the North West.

  76. Collapse/Expand feature for my Blaggregated display

    Extending Blagg and related features.

See all tags.