{"data":{"markdownRemark":{"id":"17a0958e-87fb-568c-91ab-17183a611644","html":"","fields":{"slug":"/blog/face-validator-open-source-symfony3-facial-recognition-bundle/"},"frontmatter":{"title":"Face Validator: open source Symfony3 facial recognition bundle","cover":"/img/facevailidator.jpg","tags":["face recognition API","php"],"lead":"Have you ever used an application to upload a profile picture? Sure you have. That picture then shows up with every reference to the user. In the systems we create, this function is a frequent requirement and as such, we’re used to it. However, recently we’ve been working on an app with an added requirement: **the system must verify whether the photo sent by the user really contains a human face.** What else is important?","content":[{"body":"The system should also check if the face is sufficiently exposed, if the photo isn’t too blurred, and that the person in the photo isn’t wearing sunglasses. As a result, we’ve created **Face Validator**, an **open source Symfony3 facial recognition bundle**.\n\n<NewsletterSmall id={`article top`} />\n\n## **Research**\n\nOur project team hadn’t dealt with the issue of facial recognition before so we decided to approach this task methodically, starting with an analysis of possible solutions. First, we looked into the availability of readymade **facial recognition solutions** we could implement in our system at a relatively low cost. We came across a few that could potentially meet our expectations:\n\n* Lambda Labs Face Recognition API\n* OpenFace\n* Google Vision API\n* SkyBiometry\n* Amazon Rekognition\n* MS Azure Face API\n\nWe tested all of them in order to select the best one, taking into consideration various factors, including reliability, speed, and accuracy, as well as the costs of implementation and use.\n\n## Lambda Labs Face Recognition API\n\n![Lambda Labs face recognition API](/img/lambda-labs-face-validator-article.png \"Lambda Labs offers face recognition API and album algorithm training. \")\n\nLambda Labs REST API allows, among other things, facial recognition in a photo sent as a URL to public storage. It also offers face recognition and album algorithm training (using collections of tagged pictures). When it comes to detection, you receive the coordinates of several points on the face and its size, as well as whether or not the person is smiling. Unfortunately, it provides no data on the level of blurring or face rotation and it doesn’t detect whether the face is covered by something.\n\nIn the free version, you get 1,000 face detection requests and 1,000 facial recognition requests.\n\nAfter analyzing and testing this solution, we came to the conclusion that the data provided by this API is not sufficient to create a complex face validator. Besides, the free trial – in comparison with other competitive solutions – doesn’t offer enough requests.\n\n## OpenFace\n\nAnother solution we considered was OpenFace. This is an open source library written in Python which provides a convenient API for photo pre-processing (preparing photos for use in neural networks), model training, and classification. It’s a really flexible tool which can be useful both in facial recognition and clustering. It contains ready mechanisms which make it easier for developers to use neural networks for these purposes. It also provides pre-trained models which can shorten the training process. Also, thanks to its use of the Torch framework, actions that require high computing power are transferred to the graphics card.\n\nOpenFace is certainly a great library which considerably simplifies the use of advanced tools for face classification, but facial detection and recognition itself is a problem of a slightly different nature and cannot be easily handled by this tool.\n\n<Iframe url=\"https://www.youtube.com/embed/LZJOTRkjZA4\" width=\"560\" height=\"315\" />\n\n## Google Cloud Vision API\n\nGoogle Cloud Vision API (REST, RPC)  enables the detection of one or more faces in a photo sent directly as payload or as a URL to public storage. It offers details concerning the location of particular elements of the face in the picture in the form of coordinates. Besides this, it also provides information about the size and location of the square which contains the face and additional data, including the level of rotation in three axes and the emotions which have been recognized – joy, sadness, anger, and surprise. You can also learn what the levels of blurring and exposure are and if the person is wearing a hat.\n\n![Google Cloud Vision Api](/img/cloud-vision-api-face-validator-article.png \"Google Cloud Vision API enables face detection\")\n\nThe free version of the API offers, just like Lambda Labs, 1,000 requests per month. Face detection in Cloud Vision provides a lot of details about the location of particular points in the picture, which is very useful but not actually necessary for a validator. The levels of rotation, blurring, or exposure are undoubtedly positive features of this tool. There is no information about sunglasses, though. In fact, this API could be a good engine for our validator but we haven’t chosen it due to the small number of requests available in the free trial when compared to other solutions.\n\n## SkyBiometry\n\n![SkyBiometry ](/img/sky-biometry-face-validator-article.png \"SkyBiometry offers face recognition and detection\")\n\nThis is another REST API, offering two types of service: facial recognition and detection. In the case of face recognition, you can train the model with your own tags. What interested us more was the API/faces/detect method: after you send a photo as an URL to a public storage or within the payload, you receive information about the location of the most important parts of the face and the square outline, the angle of facial rotation in three axes, gender, estimated age, and the presence or absence of a smile. The API tells you if the person is wearing glasses too, differentiating between clear and dark lenses. Apart from that, it analyzes the person’s mood: anger, disgust, fear, joy, sadness, and surprise.\n\nIn comparison with the solutions analyzed above, this free trial looks more promising: you can send 5,000 reqs/month, 2,400 reqs/day, and 100 reqs/hour. SkyBiometry is a tool that can be successfully used to build a face validator, and the info it provides is really useful for our purposes. Still, there is no data about blurring, exposure, or hats. The free trial seems sufficient for small apps with low traffic.\n\n<RelatedArticle title={`How to start a neural network with JavaScript in 5 minutes`} />\n\n## Amazon Rekognition\n\nAmazon offers a complex Rekognition REST API which uses neural networks for facial detection and comparison, detection of offensive content, recognition of the faces of famous people, and classification with the option of model training with your own photos and tags.\n\n<Iframe url=\"https://youtu.be/ttncG4gKIno\" width=\"560\" height=\"315\" />\n\nThe DetectFaces method allows you to detect all the faces in the payload photo or the one uploaded to S3 (PNG or JPG). For each face, the endpoint returns data concerning the estimated age (from… to…), square outline, coordinates of facial elements coordinates, face rotation in three axes, photo quality (focus and brightness), beard, mustache, smile, glasses (both corrective and sunglasses varieties), and emotions (joy, sadness, anger, confusion, disgust, surprise, and calmness).\n\nThe free trial offers 5,000 requests per month without additional daily or hourly limits. The data actually contains everything we could need to make a validator. The free trial, compared to the previous options, is the most profitable. This API seems to fit our profile perfectly and might help us build our validator. However, there is one solution left, offered by the Redmond giant.\n\n## MS Azure Face API\n\n![Microsoft Azure](/img/microsoft-azure-face-api-face-validator-article.png \"Microsoft offers face recognition features in the Azure Face API\")\n\nJust like most of the other solutions we’ve tested, Microsoft REST API offers both face detection and recognition. We’ve concentrated on the former to run our tests. The /detect API method for a JPEG, PNG, BMP, or GIF provides the following details: square outline coordinates, 27 face point coordinates, estimated age, gender, level of smiling, length of mustache, beard, and sideburns, type of glasses worn by the person (corrective, sunglasses, and swimming goggles), rotation in two axes, probability of emotions felt by the person (anger, contempt, disgust, fear, happiness, indifference, sadness, and surprise), hair color, baldness, makeup, face covering (if the person covers some element of his or her face, such as forehead, eyes, mouth), blurring, exposure, and noise.\n\nThe free trial offers 30,000 requests per month with a limit of 20 requests per minute. We’re really impressed by the number of details detected by Face API. Obviously, they contain all that our validator needs. Moreover, the free trial is more than enough for a small application.\n\n## Verdict\n\nAfter analyzing all the solutions, we decided to use the **MS Azure Face API** to build the face validator. Both in terms of the informativeness of the data and the price (or, actually, the options offered by the free version) made the Microsoft API an unrivaled choice. All the APIs were checked by us using sample photos. Face API proved to be reliable and fast when compared to the competition.\n\n## Implementation: Facial Detection Open Source Bundle\n\nWe implemented the Face Validator in the form of a reusable, open source Symfony3 bundle. The code has been written in PHP 7.1, however, we decided to temporarily remove any changes which are incompatible with 7.0 to enable as many potential projects as possible to add our library to their dependencies.\n\nOur goal was to make our list of dependencies short so that the solution could be used in projects based only on particular components of Symfony, not necessarily requiring the full framework.\n\nThe API client uses the Guzzle library, which is well-known and widely used by us.\n\nTo lighten the class of the validator, we’ve used a specification pattern to verify its particular conditions, so that the rules could be placed in separate, easily testable classes. Thanks to this approach, it is easier to expand the Face Validator with new conditions: you just need to add a new class implementing an adequate interface and register it in the dependency injection container.\n\n![Symfony 3 API](/img/face-validator-face-detection-open-source-software-symfony3.png \"Symfony3 offers open source API for face recognition\")\n\nMost classes have been tested by unit test. We’ve also managed to create an integration test, where a test kernel instance is built to test the functioning of the Face Validator in a working **Symfony3** app. The tests are isolated from the actual Face API and its responses are mocked in order not to determine the test results by an external API.\n\n[The source code is available at our GitHub](https://github.com/boldare/xsolve-face-validator-bundle).\n\nIn README.md, you can find brief documentation containing a description of the Face Validator’s options, installation, and configuration.\n\nFeel free to use it in your own projects, to contribute, and to share your own reflections, comments, and ideas. Your feedback is really welcome!","fullwidthImage":{"image":"","alt":"","comment":null}}],"settings":{"date":"2019-02-13T14:53:52.081Z","category":"Tech","metaDescription":"We looked into the most popular facial recognition solutions and tested them taking in consideration numerous factors. See the results! ","metaTitle":"See the most popular API solutions for a facial recognition apps","related":[{"title":"Building digital products based on machine learning - the cost perspective"},{"title":"What exactly can you do with Python? "},{"title":"MVP development - what, why & how"}],"slug":"face-detection-open-source-symfony3","canonical":""},"contributor":"Paweł Krynicki","mainContent":null}},"allMarkdownRemark":{"edges":[{"node":{"excerpt":"","id":"a9a74167-061d-5449-a2c6-dc7c1782dc89","fields":{"slug":"/blog/6-benefits-from-having-a-qa-ba-in-your-development-team/"},"frontmatter":{"title":"6 benefits from having a QA/BA in your development team","job":null,"photo":null,"cover":"/img/team-meeting-in-conference-room.jpg","templateKey":"article-page","settings":{"date":"October 11, 2018","slug":"6-benefits-from-having-qa-ba-in-your-team","type":"blog","category":"How to"},"contributor":"Natalia Kolińska","box":{"content":{"title":"6 benefits from having a QA/BA in your development team","tags":null,"clientLogo":null,"coverImage":"/img/team-meeting-in-conference-room.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"4063b7a7-933f-5dc0-ad59-812f89ab802d","fields":{"slug":"/blog/digitalizing-renewable-energy/"},"frontmatter":{"title":"Digitalizing renewable energy","job":null,"photo":null,"cover":"/img/wind-turbines-photo-by-jason-blackeye.jpg","templateKey":"article-page","settings":{"date":"October 23, 2018","slug":"digitalizing-renewable-energy","type":"blog","category":"Future"},"contributor":"Kamil Mizera","box":{"content":{"title":"Digitalizing renewable energy","tags":null,"clientLogo":null,"coverImage":"/img/wind-turbines-photo-by-jason-blackeye.jpg"},"settings":null,"type":null}}}},{"node":{"excerpt":"","id":"209d906b-0385-5007-8608-34403e51f78e","fields":{"slug":"/blog/system-story-the-little-sentence-that-builds-big-things/"},"frontmatter":{"title":"System Story – the little sentence that builds big things","job":null,"photo":null,"cover":"/img/system-story.jpg","templateKey":"article-page","settings":{"date":"October 29, 2018","slug":"system-story-the-little-sentence-that-builds-big-things","type":"blog","category":"How to"},"contributor":"Anna Bil","box":{"content":{"title":"System Story – the little sentence that builds big things","tags":null,"clientLogo":null,"coverImage":"/img/system-story.jpg"},"settings":null,"type":null}}}},{"node":{"excerpt":"","id":"a3748254-2e36-5a1e-b1c3-e12684fd7a66","fields":{"slug":"/blog/marble-js-new-open-source-framework-for-javascript/"},"frontmatter":{"title":"Marble.js – new open source framework for JavaScript","job":null,"photo":null,"cover":"/img/marblejs.jpg","templateKey":"article-page","settings":{"date":"November 07, 2018","slug":"marblejs-new-open-source-framework-for-javascript","type":"blog","category":"Tech"},"contributor":"Kamil Mizera","box":{"content":{"title":"Marble.js – new open source framework for JavaScript","tags":null,"clientLogo":null,"coverImage":"/img/marblejs.jpg"},"settings":null,"type":null}}}},{"node":{"excerpt":"","id":"594cc335-68ab-5f32-a312-9ca32b8ec9a8","fields":{"slug":"/career/qa-business-analyst-warszawa/"},"frontmatter":{"title":"QA Business Analyst Warszawa","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 18, 2018","slug":"qa-business-analyst-warszawa","type":"career","category":"Product"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"d8e30317-a1e2-524d-bd1c-ef42b29e651d","fields":{"slug":"/career/social-media-strategiest-warszawa/"},"frontmatter":{"title":"Social Media Strategist Warszawa","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 18, 2018","slug":"social-media-strategiest-warszawa","type":"career","category":"Marketing"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"1b9bd994-2308-5d94-96c1-c5d847deb012","fields":{"slug":"/career/product-designer-warszawa/"},"frontmatter":{"title":"Product Designer Warszawa","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 18, 2018","slug":"product-designer-warszawa","type":"career","category":"Product"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"5fd9230c-2c5f-5e3f-a6f6-f37117047653","fields":{"slug":"/career/php-developer-warszawa/"},"frontmatter":{"title":"PHP Developer Warszawa","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 18, 2018","slug":"php-developer-warszawa","type":"career","category":"Technology"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"d6826549-8d52-56d2-9b00-73735c4ce91f","fields":{"slug":"/career/java-developer-gliwice/"},"frontmatter":{"title":"JAVA Developer Gliwice","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 18, 2018","slug":"java-developer-gliwice","type":"career","category":"Technology"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"d0757525-e447-59d2-96c2-5db00efdd966","fields":{"slug":"/career/python-developer-warszawa/"},"frontmatter":{"title":"Python Developer Warszawa","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 18, 2018","slug":"python-developer-warszawa","type":"career","category":"Technology"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"058baa2d-fe58-58db-809f-5835a01341ad","fields":{"slug":"/career/scrum-master-warszawa/"},"frontmatter":{"title":"Scrum Master Warszawa","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 18, 2018","slug":"scrum-master-warszawa","type":"career","category":"Product"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"17ffb8fe-12d1-50e1-b094-e9b7e748ff70","fields":{"slug":"/career/finance-and-administrations-specialist-gliwice/"},"frontmatter":{"title":"Finance and Administrations Specialist Gliwice","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 18, 2018","slug":"finance-administrations-specialist-gliwice","type":"career","category":"Operations"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"e6fb07bd-2a4b-5964-bac2-c651e255cd75","fields":{"slug":"/career/devops-engineer-gliwice/"},"frontmatter":{"title":"DevOps Engineer Gliwice","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 18, 2018","slug":"devops-engineer-gliwice","type":"career","category":"Technology"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"95c0f56e-e668-5c8e-9615-cc674fdc1e5f","fields":{"slug":"/career/qa-engineer-warszawa/"},"frontmatter":{"title":"QA Engineer Warszawa","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 18, 2018","slug":"qa-engineer-warszawa","type":"career","category":"Technology"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"d242e797-634b-5c1c-94f0-711b73d53775","fields":{"slug":"/career/social-media-strategiest-gliwice/"},"frontmatter":{"title":"Social Media Strategist Gliwice","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 19, 2018","slug":"social-media-strategiest-gliwice","type":"career","category":"Marketing"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"d8a55b1f-f6bc-5ac3-ab78-ce7df7706572","fields":{"slug":"/career/scrum-master-gliwice/"},"frontmatter":{"title":"Scrum Master Gliwice","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 19, 2018","slug":"scrum-master-gliwice","type":"career","category":"Product"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"008fd063-191a-5e71-a7d7-c95884746fb7","fields":{"slug":"/career/python-developer-gliwice/"},"frontmatter":{"title":"Python Developer Gliwice","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 19, 2018","slug":"python-developer-gliwice","type":"career","category":"Technology"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"8956fba2-8e4b-5d11-a3a4-112f110c8134","fields":{"slug":"/career/php-developer-gliwice/"},"frontmatter":{"title":"PHP Developer Gliwice","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 19, 2018","slug":"php-developer-gliwice","type":"career","category":"Technology"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"241104c9-d806-5fcb-a8a2-bc771d824876","fields":{"slug":"/career/php-developer-wroclaw/"},"frontmatter":{"title":"PHP Developer Wroclaw","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 19, 2018","slug":"php-developer-wroclaw","type":"career","category":"Technology"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"92bba01b-1041-5b5a-8fa4-cb42a9af478b","fields":{"slug":"/career/qa-engineer-gliwice/"},"frontmatter":{"title":"QA Engineer Gliwice","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 19, 2018","slug":"qa-engineer-gliwice","type":"career","category":"Technology"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"a8cc031a-3526-5ab6-9889-4589e69c387a","fields":{"slug":"/career/qa-business-analyst-gliwice/"},"frontmatter":{"title":"QA Business Analyst Gliwice","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 19, 2018","slug":"qa-business-analyst-gliwice","type":"career","category":"Product"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"28afd319-72b8-5ccd-b10b-b13905bc4f23","fields":{"slug":"/career/product-designer-gliwice/"},"frontmatter":{"title":"Product Designer Gliwice","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 19, 2018","slug":"product-designer-gliwice","type":"career","category":"Product"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"da24caca-b571-573f-ac8b-431bbc084e37","fields":{"slug":"/career/product-designer-wroclaw/"},"frontmatter":{"title":"Product Designer Wroclaw","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 19, 2018","slug":"product-designer-wroclaw","type":"career","category":"Product"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"a6893e76-0dc4-5213-9990-af16c36e632d","fields":{"slug":"/career/javascript-developer-wroclaw/"},"frontmatter":{"title":"JavaScript Developer Wroclaw","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 19, 2018","slug":"javascript-developer-wroclaw","type":"career","category":"Technology"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"43f7c991-491f-5b3b-ad28-1fd852c0a875","fields":{"slug":"/blog/differences-between-class-and-dex-files-in-java-android/"},"frontmatter":{"title":"Differences between .class and .dex files in Java & Android","job":null,"photo":null,"cover":"/img/25094713777_cae2db29e7_k-1-.jpg","templateKey":"article-page","settings":{"date":"November 29, 2018","slug":"differences-between-class-and-dex-files-in-java-android","type":"blog","category":"Tech"},"contributor":"Grzegorz Kukla","box":{"content":{"title":"Differences between .class and .dex files in Java & Android","tags":null,"clientLogo":null,"coverImage":"/img/devsatwork.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"625ca873-6a9d-55e6-8564-9390834dc2bf","fields":{"slug":"/blog/hackyeah-2018-boldare-team-at-the-biggest-stationary-hackathon-in-the-world/"},"frontmatter":{"title":"HackYeah 2018 – Boldare Team at the biggest stationary hackathon in the world!","job":null,"photo":null,"cover":"/img/img_9134.jpg","templateKey":"article-page","settings":{"date":"December 04, 2018","slug":"hackyeah-2018-boldare-team-at-the-hackathon","type":"blog","category":"People"},"contributor":"Claudia Wensierska","box":{"content":{"title":"HackYeah 2018 – Boldare Team at the biggest stationary hackathon in the world!","tags":null,"clientLogo":null,"coverImage":"/img/img_9134.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"4ad6cf8e-d46b-5ee1-9542-91bdcc2e3b8d","fields":{"slug":"/blog/10-steps-to-becoming-a-javascript-developer/"},"frontmatter":{"title":"10 Steps to Becoming a JavaScript Developer","job":null,"photo":null,"cover":"/img/boldare-js-developers-team.jpg","templateKey":"article-page","settings":{"date":"December 05, 2018","slug":"10-steps-becoming-javascript-developer","type":"blog","category":"Tech"},"contributor":"Mateusz Grzesiukiewicz","box":{"content":{"title":"10 Steps to Becoming a JavaScript Developer","tags":null,"clientLogo":null,"coverImage":"/img/boldare-js-javascript-developers-team.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"f3b97c7c-4034-565a-89af-dd7bdfd33cea","fields":{"slug":"/blog/digital-product-prototyping-it-s-a-team-effort/"},"frontmatter":{"title":"Digital Product Prototyping – it’s a team effort","job":null,"photo":null,"cover":"POC-teameffort-blog_cover_v4.jpg","templateKey":"article-page","settings":{"date":"December 07, 2018","slug":"digital-product-prototyping-team-effort","type":"blog","category":"Digital Product"},"contributor":"Dave Foxall","box":{"content":{"title":"Digital Product Prototyping – it’s a team effort","tags":null,"clientLogo":null,"coverImage":"POC-teameffort-miniatura.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"10cea117-d483-585e-a95f-66a05d8db143","fields":{"slug":"/career/customer-success-guide-warszawa/"},"frontmatter":{"title":"Customer Success Guide Warszawa","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"December 09, 2018","slug":"customer-success-guide-warszawa","type":"career","category":"Product"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"a8b1d57b-582d-55da-8968-18f6c4f487ad","fields":{"slug":"/career/customer-success-guide-gliwice/"},"frontmatter":{"title":"Customer Success Guide Gliwice","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"December 09, 2018","slug":"customer-success-guide-gliwice","type":"career","category":"Product"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"1dceda6f-73a4-58bb-8340-b0d3d867a7b5","fields":{"slug":"/career/devops-engineer-warszawa/"},"frontmatter":{"title":"DevOps Engineer Warszawa","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"December 12, 2018","slug":"devops-engineer-warszawa","type":"career","category":"Technology"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"3dbc7b9b-b163-5855-8b9a-b6b4b94ba3db","fields":{"slug":"/blog/effective-scaling-through-teamwork/"},"frontmatter":{"title":"Effective scaling through teamwork","job":null,"photo":null,"cover":"/img/working-in-the-office.jpg","templateKey":"article-page","settings":{"date":"December 13, 2018","slug":"scaling-team-for-digital-product","type":"blog","category":"Digital Product"},"contributor":"Dave Foxall","box":{"content":{"title":"Effective scaling through teamwork","tags":null,"clientLogo":null,"coverImage":"/img/working-in-the-office-2.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"3bc4a242-1228-50d6-9aad-a141515624dc","fields":{"slug":"/career/content-writer-warszawa/"},"frontmatter":{"title":"Content Writer Warszawa","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"December 14, 2018","slug":"content-writer-warszawa","type":"career","category":"Marketing"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"ad58d0ec-f978-541a-bf81-acccfe623d8f","fields":{"slug":"/career/content-writer-gliwice/"},"frontmatter":{"title":"Content Writer Gliwice","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"December 14, 2018","slug":"content-writer-gliwice","type":"career","category":"Marketing"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"3ddb8338-24b7-5e73-8490-339437d999a7","fields":{"slug":"/blog/building-digital-products-based-on-machine-learning-the-cost-perspective/"},"frontmatter":{"title":"Building digital products based on machine learning - the cost perspective","job":null,"photo":null,"cover":"/img/team-meeting-discussion.jpg","templateKey":"article-page","settings":{"date":"June 05, 2018","slug":"machine-learning-digital-product-costs","type":"blog","category":"Strategy"},"contributor":"Kamil Mizera","box":{"content":{"title":"Building digital products based on machine learning - the cost perspective","tags":null,"clientLogo":null,"coverImage":"/img/team-meeting-discussion.jpg"},"settings":null,"type":null}}}},{"node":{"excerpt":"","id":"66c4db9b-3dd4-5ab6-b8ef-9c515cf2c141","fields":{"slug":"/blog/lean-process-for-a-better-product/"},"frontmatter":{"title":"Lean process for a better product","job":null,"photo":null,"cover":"/img/team-meeting-in-mir-room.jpg","templateKey":"article-page","settings":{"date":"June 05, 2018","slug":"lean-process-for-better-product","type":"blog","category":"Digital Product"},"contributor":"Kamil Mizera","box":null}}},{"node":{"excerpt":"","id":"e9c5a21b-f2e8-536e-a8b7-80f47bce5e3d","fields":{"slug":"/blog/digital-product-prototyping-what-s-it-all-about/"},"frontmatter":{"title":"Digital Product Prototyping – what’s it all about?","job":null,"photo":null,"cover":"POC-prototyp-blog_cover.jpg","templateKey":"article-page","settings":{"date":"December 18, 2018","slug":"digital-product-prototyping-whats-it-all-about","type":"blog","category":"Digital Product"},"contributor":"Dave Foxall","box":{"content":{"title":"What is a igital product prototype?","tags":null,"clientLogo":null,"coverImage":"POC-prototyp-miniatura_2x.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"e4247904-a734-55b0-b6b1-5efb16eb8ed6","fields":{"slug":"/blog/digital-travel-trends-in-the-experience-economy/"},"frontmatter":{"title":"Digital travel trends in the experience economy","job":null,"photo":null,"cover":"/img/travel-digital-trends.png","templateKey":"article-page","settings":{"date":"December 21, 2018","slug":"digital-travel-trends-in-experience-economy","type":"blog","category":"Ideas"},"contributor":"Radek Grabarek","box":{"content":{"title":"Digital travel trends in the experience economy","tags":null,"clientLogo":null,"coverImage":"/img/travel.png"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"1125509f-7b32-5388-bfc9-52dea1165eb0","fields":{"slug":"/blog/converter-pattern-in-java-8/"},"frontmatter":{"title":"Converter pattern in Java 8","job":null,"photo":null,"cover":"/img/converter-pattern-in-java8-boldare-blog.jpg","templateKey":"article-page","settings":{"date":"January 01, 2019","slug":"converter-pattern-in-java-8","type":"blog","category":"Tech"},"contributor":"Anna Skawińska","box":{"content":{"title":"Converter pattern in Java 8","tags":null,"clientLogo":null,"coverImage":"/img/converter-pattern-in-java-8-boldare-blog-cover.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"ffad3fbb-e3e1-5785-9d35-95ce10a13143","fields":{"slug":"/blog/2018-at-boldare-the-story-of-great-changes-in-ten-graphics/"},"frontmatter":{"title":"2018 at Boldare: the story of great changes in ten graphics","job":null,"photo":null,"cover":"/img/cover-na-bloga.jpg","templateKey":"article-page","settings":{"date":"January 16, 2019","slug":"2018-at-boldare-the-story-of-great-changes","type":"blog","category":"News"},"contributor":"Kamil Mizera","box":{"content":{"title":"2018 at Boldare: the story of great changes in ten graphics","tags":null,"clientLogo":null,"coverImage":"/img/blog-miniaturka.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"7e5ab016-da29-5222-9e79-1442657b5cb9","fields":{"slug":"/career/qa-business-analyst-wroclaw/"},"frontmatter":{"title":"QA Business Analyst Wroclaw","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"January 18, 2019","slug":"qa-business-analyst-wroclaw","type":"career","category":"Product"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"1f967c77-6045-55b9-9c94-30e792ce69f6","fields":{"slug":"/career/qa-engineer-wroclaw/"},"frontmatter":{"title":"QA Engineer Wroclaw","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"January 24, 2019","slug":"qa-engineer-wroclaw","type":"career","category":"Technology"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"a64966ec-0fd9-5528-a7f7-526540c87f49","fields":{"slug":"/blog/eres-yachting-designing-a-premium-online-booking-experience-for-luxury-travel/"},"frontmatter":{"title":"ERES Yachting - designing a premium online booking experience for luxury travel","job":null,"photo":null,"cover":"/img/coverfoto-blogpost-big.jpg","templateKey":"article-page","settings":{"date":"January 30, 2019","slug":"eres-yachting-designing-premium-online-booking-experience","type":"blog","category":"Digital Product"},"contributor":"Dave Foxall","box":{"content":{"title":"ERES Yachting - designing a premium online booking experience for luxury travel","tags":null,"clientLogo":null,"coverImage":"/img/coverfoto-blogpost-small.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"5df42308-319e-5e86-b1df-42dcad8f925d","fields":{"slug":"/blog/choosing-digital-product-development-partner-political-and-economic-issues/"},"frontmatter":{"title":"Choosing a digital product development partner - the political and economic issues","job":null,"photo":null,"cover":"img/video-call-at-conference-room.jpg","templateKey":"article-page","settings":{"date":"February 01, 2019","slug":"choosing-digital-product-development-partner-political-and-economic-issues","type":"blog","category":"Strategy"},"contributor":"Paweł Kaiser","box":{"content":{"title":"Choosing a development partner - the political and economic issues","tags":null,"clientLogo":null,"coverImage":"img/video-call-at-conference-room.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"95f1cc78-0016-5002-b2d9-074325c4687e","fields":{"slug":"/blog/how-much-should-you-pay-for-digital-product-development/"},"frontmatter":{"title":"How much should you pay for a digital product development?","job":null,"photo":null,"cover":"img/webp.net-resizeimage-1-.jpg","templateKey":"article-page","settings":{"date":"February 01, 2019","slug":"how-much-should-you-pay-for-digital-product-development","type":"blog","category":"Strategy"},"contributor":"Paweł Kaiser","box":{"content":{"title":"Looking for a digital product development partner? ","tags":null,"clientLogo":null,"coverImage":"img/webp.net-resizeimage-1-.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"17a0958e-87fb-568c-91ab-17183a611644","fields":{"slug":"/blog/face-validator-open-source-symfony3-facial-recognition-bundle/"},"frontmatter":{"title":"Face Validator: open source Symfony3 facial recognition bundle","job":null,"photo":null,"cover":"/img/facevailidator.jpg","templateKey":"article-page","settings":{"date":"February 13, 2019","slug":"face-detection-open-source-symfony3","type":"blog","category":"Tech"},"contributor":"Paweł Krynicki","box":{"content":{"title":"Face Validator: open source Symfony3 facial recognition bundle","tags":null,"clientLogo":null,"coverImage":"/img/facevailidatorsymfony3.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"69cd8e52-1dad-5209-89a1-8a40687b4835","fields":{"slug":"/reviews/tauron-polska-energia/"},"frontmatter":{"title":"Tauron Polska Energia, an energy company","job":null,"photo":null,"cover":null,"templateKey":"review-page","settings":{"date":"March 05, 2019","slug":"tauron-polska-energia","type":"reviews","category":null},"contributor":"Karolina Kołodziej","box":null}}},{"node":{"excerpt":"","id":"cc5b368e-1a10-5747-91b1-fc826264d915","fields":{"slug":"/reviews/virgin-radio-oman/"},"frontmatter":{"title":"Virgin Radio Oman, a part of Sabco Media ","job":null,"photo":null,"cover":null,"templateKey":"review-page","settings":{"date":"March 05, 2019","slug":"virgin-radio-oman","type":"reviews","category":null},"contributor":"Karolina Kołodziej","box":null}}},{"node":{"excerpt":"","id":"d9dbfd84-e0e2-5719-acbf-2b9a5745c048","fields":{"slug":"/reviews/eres-yachting/"},"frontmatter":{"title":"Eres Yachting - a booking platform","job":null,"photo":null,"cover":null,"templateKey":"review-page","settings":{"date":"March 05, 2019","slug":"eres-yachting","type":"reviews","category":null},"contributor":"Karolina Kołodziej","box":null}}},{"node":{"excerpt":"","id":"2aa0994b-173c-5455-a4f7-ce8edab3dfc6","fields":{"slug":"/reviews/numera-lighting/"},"frontmatter":{"title":"Numera Lighting, a lighting manufacturer","job":null,"photo":null,"cover":null,"templateKey":"review-page","settings":{"date":"March 06, 2019","slug":"numera-lighting","type":"reviews","category":null},"contributor":"Karolina Kołodziej","box":null}}},{"node":{"excerpt":"","id":"67da4b02-5c53-5e7e-a103-fde6c3803144","fields":{"slug":"/reviews/holiday-taxis/"},"frontmatter":{"title":"Holiday Taxis - a transport booking service","job":null,"photo":null,"cover":null,"templateKey":"review-page","settings":{"date":"March 06, 2019","slug":"holiday-taxis","type":"reviews","category":null},"contributor":"Karolina Kołodziej","box":null}}},{"node":{"excerpt":"","id":"d068d911-945a-540c-a07f-2f3f6b91b3fc","fields":{"slug":"/reviews/ezycount/"},"frontmatter":{"title":"EZYcount - a fintech startup","job":null,"photo":null,"cover":null,"templateKey":"review-page","settings":{"date":"March 06, 2019","slug":"ezycount","type":"reviews","category":null},"contributor":"Karolina Kołodziej","box":null}}},{"node":{"excerpt":"","id":"828e7028-9bdf-59d5-bbbb-f851267671ab","fields":{"slug":"/reviews/lamden/"},"frontmatter":{"title":"Lamden - a blockchain startup","job":null,"photo":null,"cover":null,"templateKey":"review-page","settings":{"date":"March 06, 2019","slug":"lamden","type":"reviews","category":null},"contributor":"Karolina Kołodziej","box":null}}},{"node":{"excerpt":"","id":"d854d112-347e-5811-8551-d652ddfe5e2c","fields":{"slug":"/reviews/brasswillow/"},"frontmatter":{"title":"BrassWillow - a consulting company","job":null,"photo":null,"cover":null,"templateKey":"review-page","settings":{"date":"March 06, 2019","slug":"brasswillow","type":"reviews","category":null},"contributor":"Karolina Kołodziej","box":null}}},{"node":{"excerpt":"","id":"c1ec5b4f-7e91-5e73-bc13-fd87f40119a9","fields":{"slug":"/blog/top-3-products-weve-built-in-php-challenges-and-conclusions/"},"frontmatter":{"title":"TOP 3 products we've built in PHP – challenges and conclusions","job":null,"photo":null,"cover":"/img/webp.net-resizeimage-1-.jpg","templateKey":"article-page","settings":{"date":"March 12, 2019","slug":"top-3-products-php-tojjar","type":"blog","category":"Tech"},"contributor":"Mariusz Bąk","box":{"content":{"title":"TOP 3 products we've built in PHP – challenges and conclusions","tags":null,"clientLogo":null,"coverImage":"/img/takamol-tojjar-case-study-boldare-product-development-team.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"c41c41c0-b0ba-5f70-88ce-c4d3f425fa7f","fields":{"slug":"/blog/when-two-become-one-the-story-of-boldare/"},"frontmatter":{"title":"When two become one. The story of Boldare","job":null,"photo":null,"cover":"/img/anna-zarudzka-and-piotr-majchrzak.jpg","templateKey":"article-page","settings":{"date":"June 04, 2018","slug":"the-story-of-boldare","type":"blog","category":"News"},"contributor":"Kamil Mizera","box":{"content":{"title":"When two become one. The story of Boldare","tags":null,"clientLogo":null,"coverImage":"/img/anna-zarudzka-and-piotr-majchrzak.jpg"},"settings":null,"type":null}}}},{"node":{"excerpt":"","id":"e20e0491-9012-501f-9237-56c08d8a7dda","fields":{"slug":"/blog/wtf-open-source-web-testing-framework/"},"frontmatter":{"title":"WTF: Open Source Web Testing Framework","job":null,"photo":null,"cover":"/img/kamil-chyrek.jpg","templateKey":"article-page","settings":{"date":"June 05, 2018","slug":"web-testing-framework","type":"blog","category":"Tech"},"contributor":"Tomasz Konieczny","box":null}}},{"node":{"excerpt":"","id":"ae745671-5fac-5bf4-8fc6-5584ce0332f4","fields":{"slug":"/blog/transforming-us-politics-with-a-voting-platform-for-concerned-citizens/"},"frontmatter":{"title":"Transforming US politics with a voting platform for concerned citizens","job":null,"photo":null,"cover":"/img/usa-flag.jpg","templateKey":"article-page","settings":{"date":"June 05, 2018","slug":"case-study-polco","type":"blog","category":"Case Study"},"contributor":"Karolina Kołodziej","box":{"content":{"title":"Transforming US politics with a voting platform for concerned citizens","tags":null,"clientLogo":null,"coverImage":null},"settings":null,"type":null}}}},{"node":{"excerpt":"","id":"3d384b14-f104-5965-86f7-224829f22c9d","fields":{"slug":"/blog/speeding-up-e-commerce-content-moderation-with-machine-learning-based-on-amazon-web-services/"},"frontmatter":{"title":"Speeding up e-commerce content moderation with Machine Learning based on Amazon Web Services","job":null,"photo":null,"cover":"/img/human-eye.jpg","templateKey":"article-page","settings":{"date":"June 05, 2018","slug":"machine-learning-content-moderation","type":"blog","category":"Case Study"},"contributor":"Paweł Krynicki","box":{"content":{"title":"Speeding up e-commerce content moderation with Machine Learning based on Amazon Web Services","tags":null,"clientLogo":null,"coverImage":"/img/human-eye.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"31250d56-d30d-516c-a1e6-eddf4a60ad16","fields":{"slug":"/blog/how-we-do-digital-products-at-boldare-and-what-it-means-for-your-business/"},"frontmatter":{"title":"This is how Boldare Development Teams process addresses your business needs","job":null,"photo":null,"cover":"/img/open-space.jpg","templateKey":"article-page","settings":{"date":"June 05, 2018","slug":"agile-process-for-digital-product-development","type":"blog","category":"How to"},"contributor":"Kamil Mizera","box":{"content":{"title":"This is how Boldare Development Teams process addresses your business needs","tags":null,"clientLogo":null,"coverImage":"/img/open-space.jpg"},"settings":null,"type":null}}}},{"node":{"excerpt":"","id":"364acb1e-105f-5dc3-b49b-265e7ef8c5a9","fields":{"slug":"/blog/how-to-start-a-neural-network-with-javascript-in-5-minutes/"},"frontmatter":{"title":"How to start a neural network with JavaScript in 5 minutes","job":null,"photo":null,"cover":"/img/barbara-strak.jpg","templateKey":"article-page","settings":{"date":"June 05, 2018","slug":"neural-network-with-javascript","type":"blog","category":"Tech"},"contributor":"Kamil Mikosz","box":null}}},{"node":{"excerpt":"","id":"05a33609-f9e8-55af-a595-50e4bdd418a2","fields":{"slug":"/blog/how-to-scale-a-monolithic-mvp-application-without-losing-business/"},"frontmatter":{"title":"How to scale a monolithic MVP application without losing business?","job":null,"photo":null,"cover":"/img/dubai.jpg","templateKey":"article-page","settings":{"date":"June 05, 2018","slug":"case-study-ionoview","type":"blog","category":"Case Study"},"contributor":"Karolina Kołodziej","box":{"content":{"title":"How to scale a monolithic MVP application without losing business?","tags":null,"clientLogo":null,"coverImage":null},"settings":null,"type":null}}}},{"node":{"excerpt":"","id":"98547217-caf0-56f6-955f-a615b8aaf688","fields":{"slug":"/blog/how-to-deliver-an-e-commerce-platform-mvp-in-just-6-weeks/"},"frontmatter":{"title":"How to deliver an e-commerce platform MVP in just 6 weeks","job":null,"photo":null,"cover":"/img/arabian-women.jpg","templateKey":"article-page","settings":{"date":"June 05, 2018","slug":"case-study-tojjar","type":"blog","category":"Case Study"},"contributor":"Karolina Kołodziej","box":null}}},{"node":{"excerpt":"","id":"28bad4be-ff41-5eb1-a1fa-922cfa1e511c","fields":{"slug":"/blog/how-to-create-a-teal-space-for-enhancing-creativity-and-productivity-of-self-managing-teams/"},"frontmatter":{"title":"How to create a teal space for enhancing creativity and productivity of self-managing teams","job":null,"photo":null,"cover":"/img/relax-space-big-hammock.jpg","templateKey":"article-page","settings":{"date":"June 05, 2018","slug":"teal-space-for-creativity-and-productivity","type":"blog","category":"Ideas"},"contributor":"Patrycja Kasperkiewicz","box":{"content":{"title":"How to create a teal space for enhancing creativity and productivity of self-managing teams","tags":null,"clientLogo":null,"coverImage":"/img/relax-space-hammock-and-bike.jpg"},"settings":{"tileColor":null,"textColor":null,"link":"/blog/teal-space-for-creativity-and-productivity/"},"type":"BLOG"}}}},{"node":{"excerpt":"","id":"6d31c771-b3eb-519e-850c-bd4b6ddb51d0","fields":{"slug":"/blog/from-design-to-development-in-4-weeks-creating-a-mobile-and-web-mvp-for-an-iconic-brand/"},"frontmatter":{"title":"From design to development in 4 weeks. Creating a mobile and web MVP for an iconic brand","job":null,"photo":null,"cover":"/img/virgin-radio-oman-mobile-app-design.jpg","templateKey":"article-page","settings":{"date":"June 05, 2018","slug":"case-study-virgin-radio-oman","type":"blog","category":"Case Study"},"contributor":"Karolina Kołodziej","box":{"content":{"title":"From design to development in 4 weeks. Creating a mobile and web MVP for an iconic brand","tags":null,"clientLogo":null,"coverImage":null},"settings":null,"type":null}}}},{"node":{"excerpt":"","id":"12ceee0c-1750-5780-b53a-7dbefa112d19","fields":{"slug":"/blog/designing-a-simple-search-experience-for-a-complex-product-with-a-luxurious-interface/"},"frontmatter":{"title":"Designing a simple search experience for a complex product with a luxurious interface","job":null,"photo":null,"cover":"/img/yacht.jpg","templateKey":"article-page","settings":{"date":"June 05, 2018","slug":"case-study-eres-yachting-booking-platform","type":"blog","category":"Case Study"},"contributor":"Karolina Kołodziej","box":{"content":{"title":"Designing a simple search experience for a complex product with a luxurious interface","tags":null,"clientLogo":null,"coverImage":null},"settings":null,"type":null}}}},{"node":{"excerpt":"","id":"a4fe2a8a-4bf4-5978-855a-7ea9ca9f5c05","fields":{"slug":"/blog/best-outsourcing-practices-meetup-–-designed-for-ctos/"},"frontmatter":{"title":"Best Outsourcing Practices Meetup – designed for CTOs","job":null,"photo":null,"cover":"/img/outsourcing-best-practices-meetup-group.jpg","templateKey":"article-page","settings":{"date":"June 05, 2018","slug":"cto-asks-meetup","type":"blog","category":"People"},"contributor":"Kamil Mizera","box":{"content":{"title":"Best Outsourcing Practices Meetup – designed for CTOs","tags":null,"clientLogo":null,"coverImage":null},"settings":null,"type":null}}}},{"node":{"excerpt":"","id":"6e6f6df1-3ef1-5301-867f-a342d766efd9","fields":{"slug":"/blog/agile-and-skilled-development-teams-for-a-french-unicorn/"},"frontmatter":{"title":"Agile and skilled development teams for a French unicorn","job":null,"photo":null,"cover":"/img/blablacar-office.jpg","templateKey":"article-page","settings":{"date":"June 05, 2018","slug":"case-story-blablacar","type":"blog","category":"Case Study"},"contributor":"Karolina Kołodziej","box":{"content":{"title":"Agile and skilled development teams for a French unicorn","tags":null,"clientLogo":null,"coverImage":null},"settings":null,"type":null}}}},{"node":{"excerpt":"","id":"2c5d6b57-5f85-5d02-9fe0-8696c2519059","fields":{"slug":"/blog/a-step-by-step-guide-to-event-storming-–-our-experience/"},"frontmatter":{"title":"A step by step guide to Event Storming – our experience","job":null,"photo":null,"cover":"/img/woman-in-room-with-glass-walls.jpg","templateKey":"article-page","settings":{"date":"June 05, 2018","slug":"event-storming-guide","type":"blog","category":"How to"},"contributor":"Natalia Kolińska","box":null}}},{"node":{"excerpt":"","id":"ce64d144-f9f4-528b-be78-62cda2836cbb","fields":{"slug":"/blog/5-signs-you’re-ready-for-holacracy/"},"frontmatter":{"title":"5 Signs You’re Ready for Holacracy","job":null,"photo":null,"cover":"/img/team-meeting-during-holacracy-workshop.jpg","templateKey":"article-page","settings":{"date":"June 05, 2018","slug":"5-signs-you-are-ready-for-holacracy","type":"blog","category":"Ideas"},"contributor":"Piotr Majchrzak","box":{"content":{"title":"5 Signs You’re Ready for Holacracy","tags":null,"clientLogo":null,"coverImage":"/img/team-meeting-during-holacracy-workshop.jpg"},"settings":null,"type":null}}}},{"node":{"excerpt":"","id":"2dab7565-9fc1-5d04-a721-3f7e72eec8f0","fields":{"slug":"/work/how-to-create-predictive-maintenance-software-for-wind-turbines-using-machine-learning-algorithms/"},"frontmatter":{"title":"How to create predictive maintenance software for wind turbines using machine learning algorithms","job":null,"photo":null,"cover":"/img/wind-turbine-predictive-maintenance-software-case-study.jpg","templateKey":"case-study-page","settings":{"date":"October 29, 2018","slug":"case-study-predictive-maintenance","type":null,"category":"Case Study"},"contributor":"Karolina Kołodziej","box":{"content":{"title":"How to create predictive maintenance software using machine learning","tags":["#machinelearning #python #ux #lean"],"clientLogo":null,"coverImage":null},"settings":{"tileColor":"white","textColor":"black","link":"https://www.boldare.com/work/case-study-predictive-maintenance"},"type":null}}}},{"node":{"excerpt":"","id":"a14e040a-8768-5d38-80fe-c023cc6de5bd","fields":{"slug":"/blog/introducing-data-visualization-in-d3-javascript-library/"},"frontmatter":{"title":"Introducing Data Visualization in D3 JavaScript library","job":null,"photo":null,"cover":"/img/giant-globe.jpg","templateKey":"article-page","settings":{"date":"November 07, 2018","slug":"data-visualization-in-d3-javascript-library","type":"blog","category":"Tech"},"contributor":"Marcin Brach","box":{"content":{"title":"Introducing Data Visualization in D3 JavaScript library","tags":null,"clientLogo":null,"coverImage":"/img/giant-globe.jpg"},"settings":null,"type":null}}}},{"node":{"excerpt":"","id":"77d570b2-f7ec-5415-af3e-d335793486d2","fields":{"slug":"/blog/lean-startup-series-vanity-metrics-vs-actionable-metrics/"},"frontmatter":{"title":"Lean Startup Series: Vanity Metrics vs. Actionable Metrics","job":null,"photo":null,"cover":"/img/meeting-room-1440.jpeg","templateKey":"article-page","settings":{"date":"November 19, 2018","slug":"lean-startup-vanity-metrics-vs-actionable-metrics","type":"blog","category":"Digital Product"},"contributor":"Dave Foxall","box":{"content":{"title":"Lean Startup Series: Vanity Metrics vs. Actionable Metrics","tags":null,"clientLogo":null,"coverImage":"/img/meeting-room-1440.jpeg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"05f28b4e-5320-595c-b7b3-d147bc0bb129","fields":{"slug":"/blog/lean-startup-series-validated-learning/"},"frontmatter":{"title":"Lean Startup Series: Validated Learning","job":null,"photo":null,"cover":"/img/team-at-work-1440.jpg","templateKey":"article-page","settings":{"date":"November 21, 2018","slug":"lean-startup-validated-learning","type":"blog","category":"Digital Product"},"contributor":"Dave Foxall","box":{"content":{"title":"Lean Startup Series: Validated Learning","tags":null,"clientLogo":null,"coverImage":"/img/team-at-work-1440.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"e9317355-0ae3-5691-ade0-f06e70ac4ab3","fields":{"slug":"/blog/practical-tips-on-changing-the-service-provider-and-keeping-your-digital-product-delivered/"},"frontmatter":{"title":"Practical tips on changing the service provider and still delivering your digital product","job":null,"photo":null,"cover":"/img/dev-team-at-work.jpg","templateKey":"article-page","settings":{"date":"November 25, 2018","slug":"changing-the-digital-product-service-provider","type":"blog","category":"Strategy"},"contributor":"Adam Ziemba","box":{"content":{"title":"Practical tips on changing the service provider and keeping your digital product delivered ","tags":null,"clientLogo":null,"coverImage":"/img/dev-team-at-work-cover.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"3c699bf0-2b0f-5b91-a69a-41dee56279f7","fields":{"slug":"/blog/lean-startup-series-innovation-accounting/"},"frontmatter":{"title":"Lean Startup Series: Innovation Accounting","job":null,"photo":null,"cover":"/img/lean-startup-chart.jpg","templateKey":"article-page","settings":{"date":"November 28, 2018","slug":"lean-startup-innovation-accounting","type":"blog","category":"Digital Product"},"contributor":"Dave Foxall","box":{"content":{"title":"Lean Startup series: innovation accounting","tags":null,"clientLogo":null,"coverImage":"/img/lean-startup-chart.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"23ac8e45-1c10-544a-ae63-73a9dc74bc77","fields":{"slug":"/blog/predictive-maintenance-for-wind-turbines-an-interview-with-boldare-s-machine-learning-engineers/"},"frontmatter":{"title":"Predictive maintenance for wind turbines - an interview with Boldare’s machine learning engineers","job":null,"photo":null,"cover":"/img/machine-learning-team-boldare.png","templateKey":"article-page","settings":{"date":"November 30, 2018","slug":"predictive-maintenance-wind-turbine","type":"blog","category":"Digital Product"},"contributor":"Mateusz Kościelak","box":{"content":{"title":"Predictive maintenance for wind turbines - an interview with Boldare’s machine learning engineers","tags":null,"clientLogo":null,"coverImage":"/img/machine-learning-team-boldare.png"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"545ca9ce-097c-5047-a759-a6fd14566899","fields":{"slug":"/blog/product-market-fit-for-expanding-market-demand/"},"frontmatter":{"title":"Product-Market Fit for expanding market demand","job":null,"photo":null,"cover":"/img/team-board.jpg","templateKey":"article-page","settings":{"date":"December 05, 2018","slug":"product-market-fit-expanding-demand","type":"blog","category":"Digital Product"},"contributor":"Dave Foxall","box":{"content":{"title":"Product-Market Fit for expanding market demand","tags":null,"clientLogo":null,"coverImage":"/img/team-board-miniatura.jpeg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"68a10263-08e5-5906-aa47-8a3e56250b23","fields":{"slug":"/blog/product-vision-workshops-seeing-clearly-from-the-beginning/"},"frontmatter":{"title":"Product Vision Workshops – seeing clearly from the beginning","job":null,"photo":null,"cover":"/img/team-meetings.jpg","templateKey":"article-page","settings":{"date":"December 11, 2018","slug":"product-vision-workshops-toolkit","type":"blog","category":"Digital Product"},"contributor":"Dave Foxall","box":{"content":{"title":"Product Vision Workshops – seeing clearly from the beginning","tags":null,"clientLogo":null,"coverImage":"/img/team-meetings.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"be4dba11-a1c4-5a55-94de-13271c6c5fe7","fields":{"slug":"/blog/the-what-why-and-how-of-mvps/"},"frontmatter":{"title":"MVP development - what, why & how","job":null,"photo":null,"cover":"/img/rallo.png","templateKey":"article-page","settings":{"date":"December 12, 2018","slug":"mvp-what-why-how","type":"blog","category":"Digital Product"},"contributor":"Dave Foxall","box":{"content":{"title":"MVP development - what, why & how","tags":null,"clientLogo":null,"coverImage":"/img/rallo-mini.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"97b4ca81-c274-565c-84db-4d0e62bf2d7a","fields":{"slug":"/blog/user-satisfaction-user-perspective-user-oriented-approach-an-interview-with-product-designer-pawel-capaja/"},"frontmatter":{"title":"\"User satisfaction. User perspective. User-oriented approach\" - an interview with Paweł Capaja","job":null,"photo":null,"cover":"/img/cover-photo-blogspot.jpg","templateKey":"article-page","settings":{"date":"December 12, 2018","slug":"product-desinger-pawel-capaja-interview","type":"blog","category":"Ideas"},"contributor":"Kamil Mizera","box":{"content":{"title":"What does it mean to be a Product Designer- an interview with Paweł Capaja","tags":null,"clientLogo":null,"coverImage":"/img/cover-photo-miniaturka.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"960777c2-f59c-58c3-8323-72557ba6353d","fields":{"slug":"/blog/product-market-fit-teamworking-for-results/"},"frontmatter":{"title":"Product-Market Fit – teamworking for results","job":null,"photo":null,"cover":"/img/team-meeting-1440.jpeg","templateKey":"article-page","settings":{"date":"December 14, 2018","slug":"product-market-fit-team-for-results","type":"blog","category":"Digital Product"},"contributor":"Dave Foxall","box":{"content":{"title":"Product-Market Fit – teamworking for results","tags":null,"clientLogo":null,"coverImage":"/img/team-meeting-1440.jpeg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"25800c12-fafc-5c39-ac21-19b137e9928b","fields":{"slug":"/blog/minimum-viable-products-it-s-all-about-the-team/"},"frontmatter":{"title":"Minimum Viable Products? It’s all about the team","job":null,"photo":null,"cover":"/img/teamwork.jpg","templateKey":"article-page","settings":{"date":"December 18, 2018","slug":"minimum-viable-product-team","type":"blog","category":"Digital Product"},"contributor":"Dave Foxall","box":{"content":{"title":"Minimum Viable Products? It’s all about the team","tags":null,"clientLogo":null,"coverImage":"/img/teamwork.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"7838a388-62b3-5d2c-b68e-3f89949c8470","fields":{"slug":"/blog/what-is-design-thinking/"},"frontmatter":{"title":"What is Design Thinking","job":null,"photo":null,"cover":"/img/design-thinking.jpg","templateKey":"article-page","settings":{"date":"December 18, 2018","slug":"what-is-design-thinking","type":"blog","category":"Digital Product"},"contributor":"Dave Foxall","box":{"content":{"title":"What is Design Thinking","tags":null,"clientLogo":null,"coverImage":"/img/design-thinking.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"356867d7-a9ea-5c30-9725-03f4e16f5804","fields":{"slug":"/blog/the-5-dares-of-functional-testing-an-application-in-arabic/"},"frontmatter":{"title":"The 5 dares of functional testing an application in Arabic","job":null,"photo":null,"cover":"/img/openspace-work.jpg","templateKey":"article-page","settings":{"date":"January 29, 2019","slug":"5-dares-of-functional-testing-in-Arabic","type":"blog","category":"How to"},"contributor":"Natalia Kolińska","box":{"content":{"title":"The 5 dares of functional testing an application in Arabic","tags":null,"clientLogo":null,"coverImage":"/img/openspace-work.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"a662207b-eeea-5020-8b5e-7063b88e066f","fields":{"slug":"/blog/people-dont-buy-products-people-buy-meanings/"},"frontmatter":{"title":"People don't buy products. People buy meanings","job":null,"photo":null,"cover":"/img/cover.jpg","templateKey":"article-page","settings":{"date":"February 07, 2019","slug":"design-driven-innovation","type":"blog","category":"Ideas"},"contributor":"Anna Zarudzka","box":{"content":{"title":"People don't buy products. People buy meanings","tags":null,"clientLogo":null,"coverImage":"/img/cover-mini.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"1ecc7b10-fe5e-58fb-a3db-55e65e2e1f87","fields":{"slug":"/blog/what-exactly-can-you-do-with-python/"},"frontmatter":{"title":"What exactly can you do with Python? ","job":null,"photo":null,"cover":"/img/developers-working-on-machine-learning-algoritm.jpg","templateKey":"article-page","settings":{"date":"February 27, 2019","slug":"what-exactly-can-you-do-with-Python","type":"blog","category":"Tech"},"contributor":"Mateusz Wyciślik","box":{"content":{"title":"What exactly can you do with Python? ","tags":null,"clientLogo":null,"coverImage":"/img/developers-working-on-machine-learning-algoritm.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"1c8073b0-a59b-5f51-8ceb-ee4206c84b69","fields":{"slug":"/blog/what-is-node-js-used-for/"},"frontmatter":{"title":"What is Node.js used for? ","job":null,"photo":null,"cover":"node.js_a_cover_photo.png","templateKey":"article-page","settings":{"date":"March 01, 2019","slug":"what-is-node-js-used-for","type":"blog","category":"Tech"},"contributor":"Kacper Geisheimer","box":{"content":{"title":"Learn about Node.js characteristic","tags":null,"clientLogo":null,"coverImage":"node.js_.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"1dd3e9ac-ee33-5abc-bb9d-77ba0c05dbf2","fields":{"slug":"/blog/java-vs-javascript-whats-the-difference/"},"frontmatter":{"title":"Java vs. JavaScript: what's the difference? ","job":null,"photo":null,"cover":"/img/java-vs-java-script.jpg","templateKey":"article-page","settings":{"date":"March 01, 2019","slug":"java-vs-javascript-what-is-the-difference","type":"blog","category":"Tech"},"contributor":"Grzegorz Kukla","box":{"content":{"title":"See the main differences between Java and JavaScript","tags":null,"clientLogo":null,"coverImage":"/img/javascript-vs-java.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"7c10cc73-8a0f-5ada-aec9-f06400ee6913","fields":{"slug":"/blog/machine-learning-obstacles-and-limitations/"},"frontmatter":{"title":"Machine learning - obstacles and limitations","job":null,"photo":null,"cover":"machine_learning_b.png","templateKey":"article-page","settings":{"date":"March 03, 2019","slug":"machine-learning-obstacles-and-limitations","type":"blog","category":"Strategy"},"contributor":"Jonathan Wooddin","box":{"content":{"title":"See the real power of Machine Learning","tags":null,"clientLogo":null,"coverImage":"machine_learning_b.png"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"a179fdd9-84ab-5f5d-9673-c344c54057e0","fields":{"slug":"/blog/how-to-use-javascript-classes-three-different-ways/"},"frontmatter":{"title":"How to use JavaScript Classes? Three Different Ways","job":null,"photo":null,"cover":"/img/dev-team-at-work2.jpg","templateKey":"article-page","settings":{"date":"March 21, 2019","slug":"how-to-use-javascript-classes","type":"blog","category":"Tech"},"contributor":"Sebastian Musiał","box":{"content":{"title":"How to use JavaScript Classes? Three Different Ways","tags":null,"clientLogo":null,"coverImage":"/img/dev-team-at-work-cover.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"cc9ad27c-1e05-5a65-b6b8-fd0fa0fe3340","fields":{"slug":"/work/case-study-sonnen-customer-portal/"},"frontmatter":{"title":"Visualising Energy","job":null,"photo":null,"cover":"/img/sonnen-web-app-mockup.jpg","templateKey":"case-study-page","settings":{"date":"June 05, 2018","slug":"case-study-sonnen","type":"work","category":"Case Study"},"contributor":"Karolina Kołodziej","box":{"content":{"title":"Visualising Energy","tags":["ReactJS","MVP"],"clientLogo":"/img/sonnen-logo.png","coverImage":"/img/sonnen-case-study-boldare-min.jpg"},"settings":{"tileColor":"white","textColor":"black","link":"/work/case-study-sonnen/"},"type":"CASE_STUDY"}}}},{"node":{"excerpt":"","id":"3914c4ff-8699-5b32-8b57-338e0a21a76c","fields":{"slug":"/blog/wondering-about-viability-let-impact-mapping-reassure-you/"},"frontmatter":{"title":"Wondering about viability? Let impact mapping reassure you","job":null,"photo":null,"cover":"/img/team-meeting-in-apollo.jpg","templateKey":"article-page","settings":{"date":"July 06, 2018","slug":"build-product-that-make-impact","type":"blog","category":"How to"},"contributor":"Natalia Kolińska","box":null}}},{"node":{"excerpt":"","id":"8d37b599-7a71-566e-ae63-a2cbd9b38c3f","fields":{"slug":"/blog/5-git-commands-i-wish-i-d-known-about-when-i-started-coding/"},"frontmatter":{"title":"5 Git commands that will make your work smarter","job":null,"photo":null,"cover":"5_useful_git_command.jpg","templateKey":"article-page","settings":{"date":"March 01, 2019","slug":"5-git-commands-that-will-make-your-work-smarter","type":"blog","category":"Tech"},"contributor":"Łukasz Mitusiński","box":{"content":{"title":"Learn super useful Git commands","tags":null,"clientLogo":null,"coverImage":"img/5_Useful_command_cover29.03.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"ba18bf7b-b537-52c3-8689-9abaf926ada0","fields":{"slug":"/blog/the-new-dawn-of-functional-reactive-programming-in-node-js-marble-js/"},"frontmatter":{"title":"The New Dawn of functional reactive programming in Node.js - Marble.js 2.0","job":null,"photo":null,"cover":"/img/marble_fb.png","templateKey":"article-page","settings":{"date":"March 12, 2019","slug":"functional-reactive-programming-nodejs-marblejs","type":"blog","category":"Tech"},"contributor":"Józef Flakus","box":{"content":{"title":"The New Dawn of functional reactive programming in Node.js - Marble.js 2.0","tags":null,"clientLogo":null,"coverImage":"/img/marble.js-2.0-2-.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"d3068389-ad96-565d-9537-85d7499f1df0","fields":{"slug":"/blog/python-vs-c-sharp-detailed-comparison/"},"frontmatter":{"title":"Python vs C# - a detailed comparison","job":null,"photo":null,"cover":"/img/python-vs-c-_cover-duz-y-2x.jpg","templateKey":"article-page","settings":{"date":"March 13, 2019","slug":"python-vs-c-sharp-a-comparison","type":"blog","category":"Tech"},"contributor":"Krzysztof Miczkowski","box":{"content":{"title":"Python vs C# - a detailed comparison","tags":null,"clientLogo":null,"coverImage":"/img/python-vs-c-_miniatura-2x.jpg"},"settings":null,"type":"BLOG"}}}},{"node":{"excerpt":"","id":"aaa6ddb7-41d7-5322-a719-642d4ec9a332","fields":{"slug":"/work/how-to-test-a-business-idea-with-minimum-cost-time-and-effort/"},"frontmatter":{"title":"How to test a business idea with minimum cost, time and effort","job":null,"photo":null,"cover":"/img/lean-startup-moodboard.jpg","templateKey":"case-study-page","settings":{"date":"July 18, 2018","slug":"case-study-boldare","type":"work","category":"Case Study"},"contributor":"Karolina Kołodziej","box":{"content":{"title":"How to test a business idea with minimum cost, time and effort","tags":["Lean Startup","MVP","ReactJS"],"clientLogo":null,"coverImage":null},"settings":{"tileColor":"yellow","textColor":"black","link":"/work/case-study-boldare/"},"type":"CASE_STUDY"}}}},{"node":{"excerpt":"","id":"7e0e1169-5c9d-5504-a3c6-bdff665380e7","fields":{"slug":"/blog/scaling-your-product-thriving-in-the-market/"},"frontmatter":{"title":"Scaling Your Product – thriving in the market","job":null,"photo":null,"cover":"/img/ionoview-web-app-mockup.jpg","templateKey":"article-page","settings":{"date":"September 12, 2018","slug":"scaling-your-product-thriving-in-the-market","type":"blog","category":"Digital Product"},"contributor":"Dave Foxall","box":{"content":{"title":"Scaling Your Product","tags":null,"clientLogo":null,"coverImage":"/img/ionoview-web-app-mockup.jpg"},"settings":null,"type":null}}}},{"node":{"excerpt":"","id":"b5d246ec-f16d-5e88-aacf-fbfd7fcc38a8","fields":{"slug":"/blog/how-machine-learning-is-boosting-businesses/"},"frontmatter":{"title":"How machine learning is boosting businesses","job":null,"photo":null,"cover":"/img/developers-working-on-machine-learning.jpg","templateKey":"article-page","settings":{"date":"September 12, 2018","slug":"how-machine-learning-is-boosting-businesses","type":"blog","category":"Future"},"contributor":"Dave Foxall","box":{"content":{"title":"Artificial Intelligence: the next digital frontier","tags":null,"clientLogo":null,"coverImage":"/img/developers-working-on-machine-learning-algoritm.jpg"},"settings":null,"type":null}}}},{"node":{"excerpt":"","id":"65930467-2328-534f-aa46-090ceb6c826c","fields":{"slug":"/blog/what-are-design-sprints/"},"frontmatter":{"title":"What are design sprints?","job":null,"photo":null,"cover":"/img/lean-startup-moodboard.jpg","templateKey":"article-page","settings":{"date":"September 12, 2018","slug":"what-are-design-sprints","type":"blog","category":"Digital Product"},"contributor":"Dave Foxall","box":{"content":{"title":"What are design sprints?","tags":null,"clientLogo":null,"coverImage":"/img/lean-startup-moodboard.jpg"},"settings":null,"type":null}}}},{"node":{"excerpt":"","id":"0c153fd2-b6cb-5b8a-8b39-adaf355814cc","fields":{"slug":"/career/javascript-developer-gliwice/"},"frontmatter":{"title":"JavaScript Developer Gliwice","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 05, 2018","slug":"javascript-developer-gliwice","type":"career","category":"Technology"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"79d159fe-b91f-57e9-ab54-1bba5d1dcb22","fields":{"slug":"/career/javascript-developer-warszawa/"},"frontmatter":{"title":"JavaScript Developer Warszawa","job":null,"photo":null,"cover":null,"templateKey":"job-offer-page","settings":{"date":"November 05, 2018","slug":"javascript-developer-warszawa","type":"career","category":"Technology"},"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"f8664000-0175-575e-a57b-f0fec19fb5a6","fields":{"slug":"/categories/digital-product/"},"frontmatter":{"title":"Digital Product","job":null,"photo":null,"cover":null,"templateKey":"category-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"aeb35f54-7b85-58ec-8161-46d3a6fd589d","fields":{"slug":"/categories/future/"},"frontmatter":{"title":"Future","job":null,"photo":null,"cover":null,"templateKey":"category-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"f0d198ed-1809-5505-8e7e-a97d2a75a238","fields":{"slug":"/categories/how-to/"},"frontmatter":{"title":"How to","job":null,"photo":null,"cover":null,"templateKey":"category-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"06eefb24-632a-5c1d-a885-32b84016f220","fields":{"slug":"/categories/news/"},"frontmatter":{"title":"News","job":null,"photo":null,"cover":null,"templateKey":"category-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"f07ffebb-bac3-54c3-9c75-e41a29f90c8d","fields":{"slug":"/categories/ideas/"},"frontmatter":{"title":"Ideas","job":null,"photo":null,"cover":null,"templateKey":"category-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"533db729-1580-5a09-9a54-13c2f19965b4","fields":{"slug":"/categories/people/"},"frontmatter":{"title":"People","job":null,"photo":null,"cover":null,"templateKey":"category-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"9edae576-6321-53db-9438-b43635ee49e7","fields":{"slug":"/categories/strategy/"},"frontmatter":{"title":"Strategy","job":null,"photo":null,"cover":null,"templateKey":"category-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"e8f53529-9f9f-5478-beea-c2caf5f888b1","fields":{"slug":"/categories/tech/"},"frontmatter":{"title":"Tech","job":null,"photo":null,"cover":null,"templateKey":"category-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"ad4a22c2-f1f9-5eed-a322-08c0cbfc72b4","fields":{"slug":"/contributors/adam-ziemba/"},"frontmatter":{"title":"Adam Ziemba","job":"Customer Success Guide","photo":"/img/adam-ziemba.png","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"de38694f-459b-5c43-a04d-e017daecf733","fields":{"slug":"/contributors/anna-bil/"},"frontmatter":{"title":"Anna Bil","job":"Product Designer","photo":"/img/ania_bil_blog.png","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"2b26f7a5-7fad-52f7-a597-110764a5b39c","fields":{"slug":"/contributors/anna-skawinska/"},"frontmatter":{"title":"Anna Skawińska","job":"Java Developer","photo":"/img/anna-skawin-ska-java-developer-.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"487500a7-95fa-52ce-b66e-8fbd7390a170","fields":{"slug":"/contributors/anna-zarudzka/"},"frontmatter":{"title":"Anna Zarudzka","job":"Co-CEO of Boldare","photo":"/img/anna-zarudzka.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"811fb6bd-64da-5b1f-86af-87488bdd2f99","fields":{"slug":"/contributors/claudia-wensierska/"},"frontmatter":{"title":"Claudia Wensierska","job":"Product Designer","photo":"/img/image-from-ios-2-2-.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"1daa2bfc-f4d9-54e8-af4c-26803363f04e","fields":{"slug":"/contributors/dave-foxall/"},"frontmatter":{"title":"Dave Foxall","job":"Blog Editor","photo":"/img/dave-foxall-2-.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"7fb675ae-3ebc-5aae-a81c-5a1d7ece03b0","fields":{"slug":"/contributors/dawid-rogowicz/"},"frontmatter":{"title":"Dawid Rogowicz","job":"Frontend Developer ","photo":"Dawid_Rogowicz.png","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"96148145-77e2-521e-8483-a24d368a85ff","fields":{"slug":"/contributors/grzegorz-kukla/"},"frontmatter":{"title":"Grzegorz Kukla","job":"Java Developer","photo":"/img/grzegorz-kukla.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"ac376421-4cfd-5885-9162-114eaf8a15f3","fields":{"slug":"/contributors/jonathan-wooddin/"},"frontmatter":{"title":"Jonathan Wooddin","job":"Guest Blogger","photo":"Jonathan_Wooddin.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"74b0f21e-659c-5e80-bba2-06603fb3eb65","fields":{"slug":"/contributors/kamil-mizera/"},"frontmatter":{"title":"Kamil Mizera","job":"Content Editor-in-Chief","photo":"/img/kamil-mizera-.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"8fd24eb6-db34-56ea-bcd4-5492c800964d","fields":{"slug":"/contributors/kacper-geisheimer/"},"frontmatter":{"title":"Kacper Geisheimer","job":"JavaScript Developer","photo":"Kacper_Geisheimer_JavaScript_Developer.png","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"be6c3e0b-6fbf-5517-99c8-650f78c63b1f","fields":{"slug":"/contributors/kamil-mikosz/"},"frontmatter":{"title":"Kamil Mikosz","job":"Frontend Developer","photo":"/img/kamil-mikosz.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"ab98f2af-26b1-50c1-a372-8f9059cff184","fields":{"slug":"/contributors/jozef-flakus/"},"frontmatter":{"title":"Józef Flakus","job":"Senior JavaScript Developer","photo":"/img/20840986_1453742828012914_5601588540288690596_n.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"ebd2adc5-39b1-5a8e-9cfa-cca58c133b21","fields":{"slug":"/contributors/karolina-kolodziej/"},"frontmatter":{"title":"Karolina Kołodziej","job":"Communications Manager","photo":"/img/karolina-kolodziej.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"06e843fa-c803-5d46-b8da-3392606c180b","fields":{"slug":"/contributors/lukasz-mitusinski/"},"frontmatter":{"title":"Łukasz Mitusiński","job":"Java Developer","photo":"Lukasz_Mitusinski_Java_Developer.png","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"c285c3f7-5108-5295-a238-b4d2bc4107d8","fields":{"slug":"/contributors/krzysztof-miczkowski/"},"frontmatter":{"title":"Krzysztof Miczkowski","job":".NET developer","photo":"/img/wp_20150704_002-2-.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"7fe90594-3623-5803-b924-3440cd3cb887","fields":{"slug":"/contributors/mariusz-bak/"},"frontmatter":{"title":"Mariusz Bąk","job":"Senior Software Developer ","photo":"/img/1810317.png","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"23fe696e-bdd9-5db5-97e5-7c415a90f53a","fields":{"slug":"/contributors/marcin-brach/"},"frontmatter":{"title":"Marcin Brach","job":"JavaScript Developer at Boldare","photo":"/img/marcin-brach.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"3c39dd75-dc4d-5085-ab47-49eedb24d940","fields":{"slug":"/contributors/mateusz-grzesiukiewicz/"},"frontmatter":{"title":"Mateusz Grzesiukiewicz","job":"Senior JavaScript Developer ","photo":"/img/mateusz-grzesiukiewicz.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"1166809c-2652-55ff-a9a9-d35c5ff10b32","fields":{"slug":"/contributors/mateusz-koscielak/"},"frontmatter":{"title":"Mateusz Kościelak","job":"Direct Marketing Lead","photo":"/img/mateusz-koscielak.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"88a52405-13b1-51d6-90dd-dd1f2b4a8c89","fields":{"slug":"/contributors/natalia-kolinska/"},"frontmatter":{"title":"Natalia Kolińska","job":"QA Business Analyst","photo":"/img/natalia-kolinska.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"159c6e0d-8b74-571e-b355-120ec5a6e00a","fields":{"slug":"/contributors/mateusz-wycislik/"},"frontmatter":{"title":"Mateusz Wyciślik","job":"Machine Learning/Python developer","photo":"/img/prof_sqr.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"3e951423-0b04-53b7-afb7-e787c02cc143","fields":{"slug":"/contributors/patrycja-kasperkiewicz/"},"frontmatter":{"title":"Patrycja Kasperkiewicz","job":"Office Coordinator","photo":"/img/patrycja-kasperkiewicz.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"424b273f-f67e-515f-84cd-eeae16915cfb","fields":{"slug":"/contributors/pawel-kaiser/"},"frontmatter":{"title":"Paweł Kaiser","job":"Customer Success Guide ","photo":"/img/pawelkaiser.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"7e7643bb-e010-5f35-aadb-341b15aa453e","fields":{"slug":"/contributors/pawel-krynicki/"},"frontmatter":{"title":"Paweł Krynicki","job":"Senior PHP Developer","photo":"/img/paweł-krynicki.jpeg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"91ebd35e-d1c1-5a34-8844-03cfcba5816d","fields":{"slug":"/contributors/radek-grabarek/"},"frontmatter":{"title":"Radek Grabarek","job":"Guest Blogger","photo":"/img/radek-portret-800.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"9cfe40f6-01b4-55c9-b937-fafd7bd7bf34","fields":{"slug":"/contributors/piotr-majchrzak/"},"frontmatter":{"title":"Piotr Majchrzak","job":"CEO","photo":"/img/piotr-majchrzak.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"28ee12d9-7f00-5e75-adce-539ff4326637","fields":{"slug":"/contributors/sebastian-musial/"},"frontmatter":{"title":"Sebastian Musiał","job":"Senior JavaScript developer","photo":"/img/_musial.png","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}},{"node":{"excerpt":"","id":"99f1dc20-b1c5-507f-b4a6-7e24c1f8f3f5","fields":{"slug":"/contributors/tomasz-konieczny/"},"frontmatter":{"title":"Tomasz Konieczny","job":"QA Engineer","photo":"/img/tomasz-konieczny.jpg","cover":null,"templateKey":"contributor-page","settings":null,"contributor":null,"box":null}}}]}},"pageContext":{"id":"17a0958e-87fb-568c-91ab-17183a611644","isCanonical":""}}