<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress.com" -->
<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd"><url><loc>https://blog.grijjy.com/2023/04/27/lightweight-multicast-events/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2023/04/multicastevents402x.png</image:loc><image:title>MulticastEvents@2x</image:title></image:image><lastmod>2024-10-21T09:59:54+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2022/02/15/delphis-27th-anniversary-startup-settings-and-parameters-revisited/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2022/02/startupsettings.png</image:loc><image:title>StartupSettings</image:title></image:image><lastmod>2022-02-15T19:01:25+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2022/01/25/crgp/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2022/01/crgp.png</image:loc><image:title>CRGP</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2022/01/crgpdefinition-2.png</image:loc><image:title>CRGPDefinition</image:title></image:image><lastmod>2022-01-28T17:46:58+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2022/01/04/grijjys-5th-anniversary/</loc><lastmod>2022-01-06T14:33:14+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2021/12/31/happy-new-year-from-team-grijjy/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2021/12/happynewyearhd.jpg</image:loc><image:title>HappyNewYearHD</image:title></image:image><lastmod>2022-01-01T23:12:25+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2021/10/18/build-your-own-error-reporter-part-3-macos-intel/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2021/10/macprojectsettings-1.png</image:loc><image:title>MacProjectSettings</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2021/10/errorreporting3.png</image:loc><image:title>errorreporting3</image:title></image:image><lastmod>2021-10-18T14:19:14+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2021/05/05/high-precision/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2021/04/multiprecisionhd.png</image:loc><image:title>MultiPrecisionHD</image:title></image:image><lastmod>2021-05-21T20:06:22+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2021/04/05/build-speed/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2021/04/buildspeedhd.png</image:loc><image:title>BuildSpeedHD</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2021/04/sourcefilenotfound-1.png</image:loc><image:title>SourceFileNotFound</image:title></image:image><lastmod>2021-04-08T01:23:21+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2021/02/07/deployman/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2021/02/deployman402.png</image:loc><image:title>DeployMan@2</image:title></image:image><lastmod>2021-02-08T01:18:41+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2021/01/14/shader-programming/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2021/01/shaderprogramming.jpg</image:loc><image:title>ShaderProgramming</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2021/01/gpu02_first_frame.png</image:loc><image:title>Gpu02_First_Frame</image:title></image:image><lastmod>2021-10-05T17:08:25+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2020/10/07/an-xml-dom-with-just-8-bytes-per-node/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2020/10/xmlcleanuptime-1.png</image:loc><image:title>XmlCleanupTime</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2020/10/xmlquerytime-1.png</image:loc><image:title>XmlQueryTime</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2020/10/xmltraversaltime-1.png</image:loc><image:title>XmlTraversalTime</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2020/10/xmlloadtime-1.png</image:loc><image:title>XmlLoadTime</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2020/10/xmlmemoryusage-1.png</image:loc><image:title>XmlMemoryUsage</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2020/10/compactxml-3.png</image:loc><image:title>CompactXml</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2020/10/compactxmlexample-1.png</image:loc><image:title>CompactXmlExample</image:title></image:image><lastmod>2024-08-22T05:27:18+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2020/08/12/custom-managed-records-for-smart-pointers/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2020/08/smartpointers.png</image:loc><image:title>SmartPointers</image:title></image:image><lastmod>2020-08-12T14:48:48+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2020/08/04/using-openssl-1-1-1-with-all-delphi-target-platforms/</loc><lastmod>2020-08-06T08:03:32+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2020/08/03/automate-restorable-operations-with-custom-managed-records/</loc><lastmod>2021-03-06T02:10:09+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2020/07/20/wrapping-c-apis-with-custom-managed-records/</loc><lastmod>2022-02-20T18:37:52+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2020/06/29/now-may-be-a-good-time-to-upgrade-to-delphi-10-4/</loc><lastmod>2020-06-29T12:01:55+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2020/05/25/boost-mac-performance-with-metal-and-delphi-10-4/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2020/05/metaldelphi104.png</image:loc><image:title>MetalDelphi104</image:title></image:image><lastmod>2020-12-20T10:57:19+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2020/04/21/mapping-delphi-types-to-indices-at-compile-time/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2020/04/typeindices-1.png</image:loc><image:title>TypeIndices</image:title></image:image><lastmod>2024-11-13T09:14:22+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2020/02/12/delphi-is-25-and-i-use-it-every-day/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2020/02/delphi25-1.png</image:loc><image:title>Delphi25</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2020/02/im.jpg</image:loc><image:title>IM</image:title></image:image><lastmod>2020-02-12T18:48:54+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2020/02/11/25-years-of-delphi-and-me/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2020/01/19952020-1.png</image:loc><image:title>19952020</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2020/01/19861995-1.png</image:loc><image:title>19861995</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2020/01/19701986-1.png</image:loc><image:title>19701986</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2020/01/delphi25-2.png</image:loc><image:title>Delphi25</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2020/01/grijjy_quick_look.png</image:loc><image:title>grijjy_quick_look</image:title></image:image><lastmod>2020-02-12T18:42:52+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2019/07/19/using-static-libraries-and-assembly-with-64-bit-macos/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2019/07/macos64linking.png</image:loc><image:title>macos64linking</image:title></image:image><lastmod>2019-08-21T13:03:07+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2019/06/03/a-yaml-library-for-delphi/</loc><lastmod>2021-02-01T16:44:04+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2019/01/25/allocation-free-collections/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2019/01/stackvsheap.png</image:loc><image:title>stackvsheap</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2019/01/stackcollections.png</image:loc><image:title>stackcollections</image:title></image:image><lastmod>2020-08-06T15:08:19+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2018/11/15/ios-and-macos-app-extensions-with-delphi/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/11/appextensions1.png</image:loc><image:title>AppExtensions</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/11/appextensions.png</image:loc><image:title>AppExtensions</image:title></image:image><lastmod>2022-12-14T23:01:19+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2018/11/02/inline-variables-can-increase-performance/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/11/inlinevars.png</image:loc><image:title>InlineVars</image:title></image:image><lastmod>2019-01-28T15:27:16+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2018/10/29/query-json-documents-with-jsonpath/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/10/jsonpath.png</image:loc><image:title>JsonPath</image:title></image:image><lastmod>2019-08-03T13:11:35+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2018/08/29/creating-high-performance-udp-servers-on-windows-and-linux/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/08/udpservers.png</image:loc><image:title>UdpServers</image:title></image:image><lastmod>2019-07-24T16:56:13+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2018/07/18/delphi-community-edition-finally/</loc><lastmod>2018-07-18T20:42:41+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2018/05/29/chet-a-c-header-translator-powered-by-clang/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/05/chet_screenshot.png</image:loc><image:title>chet_screenshot</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/05/chet.png</image:loc><image:title>Chet</image:title></image:image><lastmod>2018-05-29T13:08:53+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2018/05/20/using-the-apples-grand-central-dispatch-and-androids-scheduledthreadpoolexecutor-for-delphi-timers/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/05/platformtimerqueues.png</image:loc><image:title>PlatformTimerQueues</image:title></image:image><lastmod>2018-05-20T16:50:56+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2018/05/15/libclang-for-delphi/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/05/libclangfordelphi.png</image:loc><image:title>LibClangForDelphi</image:title></image:image><lastmod>2018-05-15T13:18:04+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2018/02/28/javascripting-with-duktape-for-delphi/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/02/duktapefordelphi.png</image:loc><image:title>DuktapeForDelphi</image:title></image:image><lastmod>2018-12-28T16:42:57+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2018/01/24/mvvm-starter-kit-part-2-of-3/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/01/mvvm-tviewmodeltracks.png</image:loc><image:title>Mvvm-TViewModelTracks</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/01/mvvm-vm.png</image:loc><image:title>Mvvm-VM</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/01/mvvm2.png</image:loc><image:title>Mvvm2</image:title></image:image><lastmod>2018-01-31T16:37:53+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2018/01/22/mvvm-starter-kit-part-1-of-3/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/01/mvvm-m.png</image:loc><image:title>Mvvm-M</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/01/mvvm-bindingsubproperties.png</image:loc><image:title>Mvvm-BindingSubProperties</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/01/mvvm-bindingproperties.png</image:loc><image:title>Mvvm-BindingProperties</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/01/mvvm.png</image:loc><image:title>Mvvm</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/01/mvvm1.png</image:loc><image:title>Mvvm1</image:title></image:image><lastmod>2022-04-09T02:19:12+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2018/01/26/mvvm-starter-kit-part-3-of-3/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/01/mvvm-differentviews.png</image:loc><image:title>Mvvm-DifferentViews</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/01/mvvm-grayout.png</image:loc><image:title>Mvvm-GrayOut</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/01/mvvm-v.png</image:loc><image:title>Mvvm-V</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2018/01/mvvm3.png</image:loc><image:title>Mvvm3</image:title></image:image><lastmod>2020-09-01T14:16:14+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/12/29/alternative-dark-editor-themes-for-delphi-10-2-2/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/12/vscodetheme2.png</image:loc><image:title>VSCodeTheme2</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/12/iconbaseddarktheme2.png</image:loc><image:title>IconBasedDarkTheme2</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/12/alternativefont.png</image:loc><image:title>AlternativeFont</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/12/defaultdarktheme.png</image:loc><image:title>DefaultDarkTheme</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/12/darkeditorthemes.png</image:loc><image:title>DarkEditorThemes</image:title></image:image><lastmod>2020-04-09T13:24:06+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/12/28/grijjy-team-now-embarcadero-mvps/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/12/grijjymvp.png</image:loc><image:title>GrijjyMVP</image:title></image:image><lastmod>2017-12-28T16:48:50+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/09/21/working-with-big-data-databases-in-delphi-cassandra-couchbase-and-mongodb-part-3-of-3/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/09/mongodb1.png</image:loc><image:title>MongoDB</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/09/mongodb.png</image:loc><image:title>MongoDB</image:title></image:image><lastmod>2024-01-03T16:06:54+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/09/11/face-detection-on-android-and-ios/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/09/facedetectionscreenshots.png</image:loc><image:title>FaceDetectionScreenShots</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/09/rgbconversion.png</image:loc><image:title>RgbConversion</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/09/facedetection.png</image:loc><image:title>FaceDetection</image:title></image:image><lastmod>2021-08-24T21:32:10+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/08/22/grijjycloudlogger-remote-logging-for-windows-ios-android-macos-and-linux/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/08/grijjycloudlogger.png</image:loc><image:title>GrijjyCloudLogger</image:title></image:image><lastmod>2018-11-26T14:01:21+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/08/09/experiments-in-uniform-memory-management/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/08/singly_linked_list.png</image:loc><image:title>singly_linked_list</image:title></image:image><lastmod>2017-11-10T09:51:23+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/07/26/cross-platform-code-hooking/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/07/codehooking.png</image:loc><image:title>CodeHooking</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/07/vmt.png</image:loc><image:title>VMT</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/07/codehookpseudocode.png</image:loc><image:title>CodeHookPseudoCode</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/07/codehookingscreenshots1.png</image:loc><image:title>CodeHookingScreenShots</image:title></image:image><lastmod>2017-07-26T16:01:34+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/07/20/using-google-sign-in-for-firebase-sdk-on-android/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/07/google-signin-android.png</image:loc><image:title>Google SignIn Android</image:title></image:image><lastmod>2020-01-11T10:35:23+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/07/10/simd-assembly-optimization/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/07/simd.png</image:loc><image:title>SIMD</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/07/simd041.png</image:loc><image:title>SIMD04</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/07/simd03.png</image:loc><image:title>SIMD03</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/07/simd01.png</image:loc><image:title>SIMD01</image:title></image:image><lastmod>2021-07-28T15:07:13+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/05/02/roll-your-own-lightweight-scalable-backend-using-zeromq/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/05/zeromq.png</image:loc><image:title>ZeroMQ</image:title></image:image><lastmod>2022-03-10T16:37:12+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/04/25/binary-serialization-with-google-protocol-buffers/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/04/protocolbuffers.png</image:loc><image:title>ProtocolBuffers</image:title></image:image><lastmod>2021-11-18T16:35:17+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/04/20/cross-platform-timer-queues-for-windows-and-linux/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/04/timerqueues.png</image:loc><image:title>TimerQueues</image:title></image:image><lastmod>2017-04-20T21:19:11+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/04/17/scalable-linux-sockets-for-the-cloud-part-3/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/04/scalablesocketspart3.png</image:loc><image:title>ScalableSocketsPart3</image:title></image:image><lastmod>2017-04-17T18:44:32+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/04/06/importing-third-party-linux-libraries-on-delphi-10-2-tokyo/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/04/tip-linux-libraries1.png</image:loc><image:title>Tip - Linux Libraries</image:title></image:image><lastmod>2017-04-07T14:17:41+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/03/15/scalable-http-sockets-for-the-cloud-part-2/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/03/scalablesocketspart2.png</image:loc><image:title>ScalableSocketsPart2</image:title></image:image><lastmod>2017-03-16T08:33:06+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/02/21/build-your-own-error-reporter-part-2-android/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/02/errorreporting2.png</image:loc><image:title>errorreporting2</image:title></image:image><lastmod>2019-12-14T22:10:25+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/02/09/build-your-own-error-reporter-part-1-ios/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/02/errorreporting.png</image:loc><image:title>errorreporting</image:title></image:image><lastmod>2020-02-11T11:51:05+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/02/02/a-big-thank-you-from-grijjy-for-a-busy-first-month/</loc><lastmod>2017-02-10T22:59:56+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/02/01/improve-android-and-ios-debug-compilation-speed/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/02/limiteddebuginfo.png</image:loc><image:title>limiteddebuginfo</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/quicktip.png</image:loc><image:title>quicktip</image:title></image:image><lastmod>2022-12-10T18:30:12+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/01/31/receiving-push-notifications-from-apples-push-notification-and-googles-firebase-cloud-messaging-services/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/receivingremotepushnotifications.png</image:loc><image:title>receivingremotepushnotifications</image:title></image:image><lastmod>2017-02-14T15:53:22+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/01/23/using-facebook-sdk-native-framework-for-ios-and-android-for-social-login-and-more-part-1/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/socialframeworks.png</image:loc><image:title>socialframeworks</image:title></image:image><lastmod>2017-12-28T15:23:45+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/01/30/embed-facebook-sdk-for-android-in-your-delphi-mobile-app-part-2/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/socialframeworkspart2.png</image:loc><image:title>socialframeworkspart2</image:title></image:image><lastmod>2021-02-16T17:05:34+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/01/30/efficient-and-easy-to-use-json-and-bson-library/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/jsonbson.png</image:loc><image:title>jsonbson</image:title></image:image><lastmod>2021-09-08T03:03:48+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/01/18/sending-ios-and-android-remote-push-notifications-from-your-delphi-service-with-the-http2-protocol/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/remotepushnotifications.png</image:loc><image:title>remotepushnotifications</image:title></image:image><lastmod>2017-01-18T19:21:50+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/01/11/working-with-big-data-databases-in-delphi-cassandra-couchbase-and-mongodb-part-2-of-3/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/couchbase.png</image:loc><image:title>couchbase</image:title></image:image><lastmod>2017-01-13T21:42:23+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/01/13/using-the-google-cloud-platform-apis/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/googleapi.png</image:loc><image:title>googleapi</image:title></image:image><lastmod>2018-03-28T15:09:21+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/01/05/working-with-big-data-databases-in-delphi-cassandra-couchbase-and-mongodb-part-1-of-3/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/featured-image.png</image:loc><image:title>featured-image</image:title></image:image><lastmod>2017-01-12T19:04:28+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/01/05/expand-your-collections-collection-part-1-a-generic-set/</loc><lastmod>2020-10-29T17:25:32+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/01/12/expand-your-collections-collection-part-2-a-generic-ring-buffer/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/ringbuffer1.jpg</image:loc><image:title>ringbuffer</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/ringbuffer_flat_write_overflow.png</image:loc><image:title>ringbuffer_flat_write_overflow</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/ringbuffer_flat_written1.png</image:loc><image:title>ringbuffer_flat_written</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/ringbuffer_flat_consumed.png</image:loc><image:title>ringbuffer_flat_consumed</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/ringbuffer_circle_written.png</image:loc><image:title>Ring buffer after writing 6 more elements</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/ringbuffer_circle_consumed.png</image:loc><image:title>Ring buffer after reading 2 elements</image:title></image:image><lastmod>2019-03-22T06:25:03+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/01/10/unit-testing-generic-types/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/genericunittests.jpg</image:loc><image:title>genericunittests</image:title></image:image><lastmod>2024-01-24T18:00:55+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/01/06/cross-platform-abstraction/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/crossplatform1.png</image:loc><image:title>crossplatform</image:title></image:image><lastmod>2017-01-10T17:26:18+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/01/09/scalable-https-and-tcp-client-sockets-for-the-cloud/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/scalablesockets.png</image:loc><image:title>scalablesockets</image:title></image:image><lastmod>2017-03-16T14:17:50+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/01/09/cross-platform-text-to-speech/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/importsapi.png</image:loc><image:title>importsapi</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/texttospeechapp.png</image:loc><image:title>texttospeechapp</image:title></image:image><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/texttospeech.png</image:loc><image:title>texttospeech</image:title></image:image><lastmod>2022-03-15T17:20:36+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/2017/01/05/happy-new-year-and-hello-to-everyone/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/happynewyear.jpg</image:loc><image:title>happynewyear</image:title></image:image><lastmod>2017-02-09T20:41:59+00:00</lastmod><changefreq>monthly</changefreq></url><url><loc>https://blog.grijjy.com/contact/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/person-smartphone-office-table.jpeg</image:loc><image:title>Placeholder Image</image:title></image:image><lastmod>2017-01-05T17:24:37+00:00</lastmod><changefreq>weekly</changefreq><priority>0.6</priority></url><url><loc>https://blog.grijjy.com/about/</loc><image:image><image:loc>https://blog.grijjy.com/wp-content/uploads/2017/01/stairs-lights-abstract-bubbles1.jpg</image:loc><image:title>Placeholder Image</image:title></image:image><lastmod>2017-01-04T19:22:15+00:00</lastmod><changefreq>weekly</changefreq><priority>0.6</priority></url><url><loc>https://blog.grijjy.com</loc><changefreq>daily</changefreq><priority>1.0</priority><lastmod>2024-11-13T09:14:22+00:00</lastmod></url></urlset>
