Introduction Or How To Manage Records in Salesforce Efficiently
Handling large volumes of data in Salesforce is crucial for businesses that need to manage accurate records. Whether it’s importing new data, exporting reports, or making bulk updates, choosing the right tool can save time and reduce errors. Today we will take a look at the two popular tools for these tasks: XL-Connector and Salesforce Data Loader.
XL-Connector is ideal for users who prefer working in Excel. It allows you to easily pull Salesforce data into Excel, update it, and sync the changes back to Salesforce without switching between platforms. This makes it a powerful option for businesses handling large amounts of data while leveraging the flexibility of Excel. For those looking for an Excel Salesforce integration, XL-Connector is a popular choice.
On the other hand, Salesforce Data Loader is commonly used for bulk data uploads, updates, and exports directly within Salesforce. It’s especially favored by Salesforce admins and developers. However, if you prefer working in Excel and want more flexibility, you might consider the XL-Connector as another comparison of Salesforce Excel connectors shows its advantages in handling bulk data operations through Excel.
Insight:
In comparison with the Data Loader, the XL-Connector eliminates several steps in the process of loading data:
- Allows loading of Excel data that is not in a tabular format
- CSV files are eliminated as the data flows directly
- Error/success files are eliminated since all results are returned directly to Excel
Imagine a sales team at a growing retail company. They needed to update thousands of product records in Salesforce. Using XL-Connector, they downloaded the data into Excel, applied formulas to clean and format the data, and synced it back to Salesforce in a matter of minutes. This process saved them hours compared to doing it manually or using Salesforce’s native tools. If they had used the Salesforce Data Loader, they would have completed the task, but without the flexibility of working within Excel’s environment. For them, XL-Connector proved to be the better Salesforce data uploader for their workflow.
Throughout this article, we’ll explore the key features, pricing, and limitations of both tools, so you can decide which one best fits your Salesforce data management needs.
What Is XL-Connector from Xappex?
XL-Connector is an Excel-based tool that allows users to connect Salesforce with Excel, offering a seamless solution for managing bulk data. For many businesses, Excel is a familiar and efficient platform for handling data, and XL-Connector bridges the gap by allowing users to work with Salesforce data directly in Excel. It provides essential functionalities for tasks such as bulk data updates, imports, exports, and reporting, making it a versatile tool for both business professionals and Salesforce administrators.
Key Features of XL-Connector
- Seamless Data Import and Export:
XL-Connector allows users to pull Salesforce data into Excel using SOQL (Salesforce Object Query Language) and push updates back to Salesforce. Users can also import data directly from Salesforce reports, ensuring real-time accuracy in their work.
- Bulk Data Operations:
XL-Connector simplifies bulk operations like inserting, updating, and deleting large volumes of Salesforce records, making it an efficient Salesforce bulk upload tool. This is essential for businesses that regularly need to update or clean up their data.
- Offline Work Capability: Users can download data from Salesforce, work offline in Excel, and sync their changes once they’re back online. This feature is valuable for teams who may not have consistent access to the internet but still need to perform data tasks.
- Excel Formula Integration: Users can apply Excel’s formulas, pivot tables, and other functionalities to Salesforce data. This adds an extra layer of flexibility and power for data analysis and manipulation, compared to working within Salesforce’s native tools.
- Automated Data Refreshes:
XL-Connector allows users to schedule automated data updates, ensuring that the latest Salesforce data is always available in Excel without manual intervention. - Mass Download and Upload of Files:
Managing Salesforce attachments becomes easier as users can bulk-download and upload documents and attachments from Salesforce records, improving efficiency for businesses dealing with large volumes of documents.
Advanced Features for Administrators and Developers
- Salesforce Metadata Management:
XL-Connector enables administrators to manage Salesforce metadata, such as field-level security, validation rules, and picklists, directly from Excel. This is particularly useful for large-scale metadata updates or adjustments.
- Bulk Upload of Related Records: The tool supports the bulk upload of multiple related Salesforce records in one go, maintaining relationships between them (e.g., Accounts, Contacts, and Opportunities), which reduces manual work and errors.
- Automating Data Loads with Flows:
XL-Connector includes a “Flows” feature that allows administrators to automate routine data operations, such as importing, updating, or deleting records. These operations can be scheduled to run at specific times, improving overall workflow efficiency.
- Custom Metadata Management:
Administrators can manage Custom Metadata Types within XL-Connector, making it easier to deploy custom settings across different Salesforce environments.
- Custom Formulas for Dynamic Data Retrieval: Admins can use Excel’s custom formulas to dynamically retrieve Salesforce data. This is perfect for creating advanced reports or dashboards that automatically update based on new data from Salesforce.
- Lead Conversion in Bulk:
For sales teams, XL-Connector supports the bulk conversion of leads into Accounts, Contacts, and Opportunities. This drastically speeds up the lead management process, allowing sales teams to focus more on closing deals rather than managing data.
- Scoping and Restriction Rules Management: Admins can use XL-Connector to manage Scoping Rules and Restriction Rules that define which Salesforce records users can see based on their roles or the attributes of the data. This simplifies access control for larger organizations and ensures that users only see the data relevant to them.
- VBA and Advanced Automation: For advanced users, XL-Connector supports VBA (Visual Basic for Applications), enabling custom automation tasks and workflows, providing a highly flexible tool for developers.
- Managing Field-Level Security in Bulk: With XL-Connector, you can easily update the field-level security settings across multiple user profiles at once. This feature is a time-saver when managing large systems where permissions need to be updated across many fields.
- Advanced Data Validation:
XL-Connector can validate Salesforce data directly in Excel before pushing updates, ensuring that all data meets the required format or dependencies (such as validating dependent picklists). This helps prevent errors and maintains data quality across your Salesforce org.
- Handling Custom Metadata and Metadata Deployments: Admins can bulk manage custom metadata in Salesforce, pushing updates or new metadata settings across various environments with ease. This feature allows for faster configuration changes and streamlines the development process.
- Export and Import of Flows: XL-Connector’s automation flows can be exported and imported, allowing teams to share flows between environments or colleagues, ensuring consistency in data operations and reducing the need to recreate workflows manually.
- VBA Scripts for Enhanced Workflow: For more technical users, the ability to write VBA scripts enables highly customized automation solutions within XL-Connector. Developers can use VBA to script custom data management processes, enhancing the overall capabilities of the tool.
- Managing Dependent Picklists: Admins can validate and manage dependent picklists from within Excel, ensuring data accuracy when working with fields that rely on specific value dependencies.
- Visualforce Page Generation:
Developers using Visualforce pages can generate these pages based on existing Salesforce layouts using XL-Connector, simplifying the process of building custom pages that mirror standard Salesforce layouts.
To learn more about the advanced features of the XL-Connector and how it may be applied in different use cases, check our detailed XL-Connector review.
For businesses and administrators seeking an efficient Salesforce data uploader, XL-Connector offers a flexible and powerful solution. Its default features make bulk data operations easy for everyday users, while its advanced features provide administrators and developers with the tools they need for complex data management. Whether you’re looking for an alternative to Salesforce’s native tools or need a Salesforce data importer that works seamlessly with Excel, XL-Connector is an excellent choice for managing your Salesforce data efficiently.
What Is Salesforce Data Loader?
Salesforce Data Loader is a powerful desktop application designed to handle bulk data operations in Salesforce. It enables users to insert, update, delete, upsert, and export data using CSV (Comma Separated Values) files.
Data Loader is particularly useful for organizations that need to process large volumes of data, and it is available for both MacOS and Windows. It supports loading data into all Salesforce objects, including custom objects.
Salesforce Data Loader provides a user-friendly interface for simple tasks as well as a command-line interface for more complex and automated processes, offering flexibility to both casual users and advanced administrators. It is most commonly used by Salesforce administrators and developers for large data migrations, regular data syncs, or for handling data that cannot be managed using Salesforce’s standard import wizards.
Key Features of Salesforce Data Loader
- Bulk Data Operations (Insert, Update, Delete, Upsert):
Salesforce Data Loader is designed to handle large-scale data operations. Whether you need to insert new records, update existing ones, delete unnecessary data, or perform an upsert (which inserts new records and updates existing ones simultaneously), Data Loader efficiently handles bulk operations for up to 5 million records. This makes it an excellent tool for businesses that need to manage vast datasets.
- CSV File Support: Data Loader only supports CSV files for importing and exporting data. CSV is a widely used format, making it easy to create and manipulate the necessary data files using spreadsheet tools like Excel. Users can import CSV files to update Salesforce records and export Salesforce data into CSV format for further analysis or backup purposes.
- Easy-to-Use Wizard Interface: Data Loader provides a wizard-style graphical user interface (GUI) that simplifies data operations, guiding users step-by-step through the process. It is ideal for users who are not familiar with scripting or coding and need an intuitive method to handle data loads.
- Command-Line Interface (CLI):
For advanced users, Data Loader offers a command-line interface on Windows. This allows administrators and developers to automate repetitive or large-scale data operations by setting up scheduled batch jobs. CLI is particularly useful when managing large, ongoing data syncs between Salesforce and other systems.
- Field Mapping:
Data Loader provides a drag-and-drop field mapping feature that makes it easy to map fields in your CSV file to Salesforce fields. This ensures accurate data imports and reduces the chances of errors caused by mismatched fields.
- Detailed Success and Error Logs:
After each data operation, the Data Loader generates detailed success and error logs in CSV format. These logs are useful for troubleshooting, allowing users to identify issues such as missing or incorrectly formatted data, so errors can be quickly corrected.
- Support for Large Files: Data Loader supports handling large data files—up to 150 MB per file. This is particularly useful for organizations dealing with large data migrations or massive data uploads. If larger data sets are required, they must be broken into smaller batches or handled with the help of Salesforce partners.
- Batch Processing:
Data Loader uses batch processing to handle large datasets efficiently. You can adjust the batch size up to 10,000 records per batch, which helps to optimize data load speed and memory usage, especially when using the Bulk API.
- Export Data for Backup:
Data Loader is not just for importing data; it can also export Salesforce records into CSV files for backup purposes. This is ideal for businesses that need to regularly back up data or move Salesforce records into external systems for analysis.
Advanced Features for Administrators and Developers:
- Automated Data Loads via Command-Line Interface (CLI): Administrators and developers can automate data loads using Data Loader’s command-line interface (CLI). By creating batch scripts, users can schedule regular data operations such as nightly imports or exports. This eliminates the need for manual intervention, making Data Loader ideal for routine data syncs or for integrating Salesforce data with external systems.
- Use of Bulk API and Bulk API 2.0:
Data Loader integrates with Salesforce Bulk API and Bulk API 2.0, making it faster and more efficient for large-scale operations. The Bulk API processes records asynchronously, which means that multiple batches of data can be processed in parallel. Administrators can also enable serial processing (batch by batch) for data loads to avoid database contention.
- Handling Large Data Volumes: Data Loader can handle up to 150 million records when using the Bulk API 2.0. For extremely large data operations, such as enterprise-level data migrations or system-wide data cleansing, this capability ensures that administrators can work with massive datasets efficiently.
- Field Mapping Templates:
For repetitive data loads, administrators can save field mapping templates. These templates help standardize data imports and ensure that field mappings are consistent across multiple data files, reducing the chance of errors when importing similar data sets over time.
- Data Encryption and Security: Salesforce Data Loader supports data encryption to secure sensitive data during uploads and downloads. This is particularly important for businesses handling confidential information such as personal customer data or proprietary business records.
- Hard Deletion:
Data Loader supports hard deletion of records, which permanently removes records from Salesforce, bypassing the recycle bin. This feature is useful for admins who need to clean up large amounts of data and free up storage space in Salesforce. However, it’s important to note that hard-deleted records cannot be recovered. Also, you don’t have to wait 15 days before your records will be deleted.
- Custom Batch Size Configuration:
Administrators can configure the batch size for data processing in Data Loader. For SOAP API operations, the batch size can be set to between 200 and 2,000 records per batch. For Bulk API operations, the batch size can go up to 10,000 records per batch. This flexibility allows admins to optimize the performance of data operations based on the volume and complexity of the data being processed.
- Advanced Error Handling:
Data Loader’s detailed error logs allow admins and developers to pinpoint problems in data operations. The logs provide a clear understanding of why certain records failed during an import or update, allowing for quick fixes and reprocessing of the affected records.
- Data Compression: Data Loader can compress data during uploads to improve performance. This is especially useful when working with very large datasets, as it reduces network traffic and accelerates data transfer times.
- Support for All Salesforce Objects: Salesforce Data Loader supports all standard and custom objects in Salesforce, making it a versatile tool for a wide range of data operations. This includes not only core objects like Accounts, Contacts, and Opportunities but also any custom objects.
Salesforce Data Loader is an essential tool for organizations that need to manage large volumes of data. Its default features such as CSV file support, bulk data operations, and batch processing make it a go-to tool for importing and exporting data efficiently. For administrators and developers, advanced features like command-line automation, Bulk API integration, and detailed error handling offer the flexibility to manage complex data tasks. Whether you’re handling mass data migrations or simply looking for a robust Salesforce data loader alternative, Salesforce Data Loader provides the tools you need to manage your data efficiently.
Salesforce Tools Comparison: XL-Connector vs Data Loader
Feature | XL-Connector | Salesforce Data Loader |
Ease of Use | ⭐⭐⭐⭐ – Intuitive Excel-based interface makes it easy for non-technical users to manage data directly from Excel. | ⭐⭐⭐ – More complex, with a user-friendly GUI, but still requires some technical knowledge, especially for command-line operations. |
Data Volume Handling | ⭐⭐⭐ – Handles large datasets efficiently with Excel’s capabilities, supporting mass operations on large amounts of records. | ⭐⭐⭐⭐⭐ – Supports bulk data handling, but may slow down for very large datasets (up to 5 million records per operation). |
Data Cleaning and Validation | ⭐⭐⭐⭐⭐ – Provides data cleaning using Excel formulas and tools for data validation before pushing to Salesforce. | ⭐⭐ – Limited built-in validation; relies heavily on manual review of error logs to correct issues during data import. |
Automation Capabilities | ⭐⭐⭐⭐ – Allows automation of repetitive tasks through Excel flows and macros, making it accessible to non-technical users. | ⭐⭐⭐ – Supports automation through command-line interface (Windows only), offering powerful automation for advanced users. |
Offline Work | ⭐⭐⭐⭐⭐ – Fully supports offline work; users can manipulate data in Excel offline and sync it with Salesforce later. | No – No offline work capability; requires an active Salesforce connection to function. |
Support for Custom Objects | ⭐⭐⭐⭐⭐ – Fully supports all Salesforce custom objects, making it flexible for businesses with customized Salesforce implementations. | ⭐⭐⭐⭐⭐ – Supports custom objects, making it useful for organizations with highly customized Salesforce environments. |
File Formats Supported | CSV, Excel – Supports both CSV and Excel formats for importing/exporting data, providing users with more flexibility. | CSV – Only supports CSV files for import and export operations. |
Bulk Data Operations | ⭐⭐⭐⭐ – Supports bulk data insert, update, delete, and upsert operations, with easy-to-use Excel-based workflows. | ⭐⭐⭐⭐ – Handles bulk data operations effectively, including insert, update, delete, and upsert functions via CSV files. |
Field Mapping | ⭐⭐⭐⭐⭐ – Drag-and-drop field mapping within Excel, making it simple and intuitive to match Salesforce fields to data. | ⭐⭐⭐⭐ – Drag-and-drop field mapping available within the user interface, though less intuitive than Excel-based methods. |
Error Logs | ⭐⭐⭐⭐⭐ – Provides detailed error logs that can be easily analyzed and corrected using Excel’s functionality. | ⭐⭐⭐ – Offers comprehensive error logs for troubleshooting, but requires manual review and corrections. |
Metadata Management | ⭐⭐⭐⭐ – Full control over Salesforce metadata through Excel, allowing admins to manage field settings, security rules, and picklists. | – No metadata management; |
Custom Batch Sizes | ⭐⭐⭐⭐⭐ – Allows customization of batch sizes for data processing, helping users optimize operations based on dataset size. | ⭐⭐⭐⭐⭐ – Batch sizes can be adjusted for SOAP and Bulk API, but it requires some technical adjustments. |
Command Line Support | ⭐⭐⭐ – No built-in command-line interface, but external Excel automation tools can provide similar functionality. | ⭐⭐⭐ – Full command-line support on Windows, enabling advanced automation and scheduling for data loads. Windows only. |
Scheduled Data Loads | ⭐⭐⭐⭐⭐ – XL-Connector allows users to automate data refreshes, making it possible to schedule automatic updates so that the most current Salesforce data is always reflected in Excel. | ⭐⭐⭐⭐ – Allows scheduling via command-line scripts, providing robust automation for recurring data operations. |
Total Stars: | 57 ⭐⭐⭐⭐⭐ | 50 ⭐⭐⭐⭐⭐ |
Pricing and Licensing
XL-Connector and Salesforce Data Loader differ significantly in terms of pricing and licensing, offering flexibility for different types of users depending on their needs and the scale of their Salesforce operations. Here’s a detailed breakdown of the pricing structure for XL-Connector and a comparison with Salesforce Data Loader, which is free to use.
Pricing Aspect | XL-Connector | Salesforce Data Loader |
Free Plan ($0/user/month) | Free Plan: Users can pull unlimited reports from Salesforce, execute SOQL queries, and refresh data in one Excel sheet at a time. This plan is ideal for users who need basic data retrieval from Salesforce without data manipulation. More details are available at XL-Connector Pricing. | Free: Salesforce Data Loader is a no-cost tool available to users across Enterprise, Performance, Unlimited, and Developer editions, offering basic data import/export functionality for CSV files. |
Team Player Plan ($99/user/year) | Team Player Plan: Offers unlimited data pulls and refreshes. Offers full capabilities to create, update, and delete data in Salesforce, but only using templates previously created by a user of Enterprise Admin. This makes it possible for all users in your organization to run complex data loading scenarios in one click, without being exposed to the underlying complexity. More details can be found at XL-Connector Pricing. | Free: As a standard Salesforce tool, Data Loader remains free with no additional costs but with limitations in data automation, requiring manual setup for more complex workflows. |
Enterprise Admin Plan ($299/user/year) | Enterprise Admin Plan: Designed for power users and admins, this plan includes advanced automation capabilities, scheduling, mass data manipulation, and tools like field and layout analyzers and metadata managers. This plan also provides 2 hours of individual coaching to help users set up templates and optimize workflows. It’s perfect for organizations with complex Salesforce operations. More details can be found at XL-Connector Pricing. | Free: Salesforce Data Loader has no enterprise-specific plans or advanced features. It offers command-line automation via batch scripts, which can be useful but lacks the flexibility of Excel-based tools for complex admin tasks. |
Pricing Comparison Summary
- XL-Connector offers three pricing tiers that allow businesses to scale based on their Salesforce needs:
- The Free Plan provides basic access to data pulls and SOQL queries.
- The Team Player Plan at $99/user/year adds unlimited data operations and an abstraction layer from complex data mappings, making the tool accessible for any user in the organization.
- The Enterprise Admin Plan at $299/user/year delivers advanced automation, mass data manipulation, scheduling, and in-depth tools for managing Salesforce metadata and layouts. This plan is ideal for Salesforce admins and developers requiring more control and functionality in their data operations. This plan is also used by admins to create data templates for the users of the Team Player plan.
- Salesforce Data Loader remains a free tool for bulk data operations, offering basic functionality without additional costs. However, it lacks the advanced customization and automation features found in XL-Connector.
In conclusion, for users needing powerful automation, advanced features, and personalized support, XL-Connector’s paid plans offer significant value. For those looking for basic bulk operations at no cost, Salesforce Data Loader remains a useful alternative.
Wrapping Up
In this detailed comparison of XL-Connector and Salesforce Data Loader, we’ve seen how each tool serves different use cases and user needs. Both tools offer bulk data operations, but they differ significantly in terms of features, flexibility, and pricing. Let’s break down the key takeaways, including how these tools stack up in terms of limits, advanced functionality, and specific use cases.
XL-Connector:
- Best for users who prefer working in Excel: XL-Connector integrates directly with Excel, allowing users to pull Salesforce data into their spreadsheets, perform updates, and push the data back to Salesforce. This makes it the perfect tool for business professionals, Salesforce admins, and developers who are comfortable using Excel to manipulate large datasets.
- Advanced features for Salesforce admins and developers: XL-Connector is much more than a simple data uploader. It offers powerful tools like metadata management, bulk uploads of related records, and automated workflows through Flows. These features help manage complex data operations, such as updating custom metadata types or automating data refreshes across multiple departments.
- Automation and customization: The Enterprise Admin Plan offers advanced automation, scheduling, and custom templates, making XL-Connector an ideal choice for organizations that need to run recurring data operations or handle complex bulk updates. Features like scoping rules, restriction rules, and mass data manipulation make this tool a strong contender for those looking for an alternative to Salesforce Data Loader.
- Flexible pricing tiers: XL-Connector offers different plans to suit various business needs, from a Free Plan to more feature-rich paid plans like the Team Player Plan ($99/user/year) and the Enterprise Admin Plan ($299/user/year). This allows organizations to scale up as their Salesforce operations become more complex.
Salesforce Data Loader:
- Free and reliable for basic operations: DataLoader Salesforce is a free tool provided by Salesforce, available to users on Enterprise, Performance, Unlimited, and Developer editions. It’s ideal for users who need to perform bulk uploads, updates, or exports of Salesforce records, but don’t require advanced features like metadata management or Excel integration.
- File format limitations: Salesforce Data Loader only supports CSV file imports and exports, which can be restrictive for users who prefer working with Excel. While this is sufficient for basic bulk data operations, it might not be enough for users needing more flexible data formats.
- Command-line automation: For organizations needing to schedule regular data imports or backups, Salesforce Data Loader offers command-line automation on Windows. This is particularly useful for larger data operations, such as migrating up to 150 million records. However, it requires technical expertise, and there’s no built-in Excel integration, which limits flexibility for less technical users.
- Salesforce data uploader tools: While Data Loader supports large data volumes, there are specific Salesforce Data Loader limits to consider. For example, Data Loader handles up to 5 million records per file and is suitable for Salesforce bulk uploads, but it lacks some of the advanced features seen in XL-Connector, such as field analysis and detailed metadata management.
Salesforce Data Loader Limits and Considerations:
- Limits on batch sizes: The Salesforce dataloader has a default batch size of 200 to 10,000 records for data operations, depending on whether you’re using the Bulk API or SOAP API. Larger batch sizes improve performance but require more memory and processing power.
- Data complexity: Salesforce Data Loader is perfect for straightforward operations but can struggle with more complex datasets. For organizations that need to manage multiple related records or frequently update custom metadata, XL-Connector is a more powerful solution.
When to Choose XL-Connector:
- If you need more control and customization in how you import data, manipulate it, and upload it back into Salesforce.
- If you work extensively with Excel and need an intuitive interface to manage Salesforce records.
- If your business requires advanced features like metadata management, dynamic UI adjustments, and automated workflows.
- If you’re looking for a more powerful alternative to Salesforce Data Loader that supports automation and advanced admin capabilities.
When to Choose Salesforce Data Loader:
- If you’re looking for a free solution to perform bulk data operations, such as updating records or performing Salesforce bulk uploads.
- If your data operations are straightforward and don’t require advanced features like automation or detailed metadata management.
- If you need to process large data sets (up to 150 million records) and are comfortable using CSV files for data management.
- If you need to set up batch processes or automate scheduled data imports via the command-line interface on Windows.
Final Thoughts:
For businesses with basic data needs, Salesforce Data Loader provides a reliable and cost-effective solution. It’s an excellent tool for performing bulk data imports and exports but has certain Salesforce Data Loader limits in terms of file formats and advanced functionality.
For users looking for a more advanced tool that integrates with Excel, provides rich customization options, and supports automation, XL-Connector is a superior alternative. Its robust features like bulk metadata management, flows, and mass data manipulation make it ideal for organizations with complex Salesforce operations.
Ultimately, the choice between these tools comes down to the specific requirements of your Salesforce operations. XL-Connector is the best choice for organizations that need more flexibility, customization, and advanced admin features, while Salesforce Data Loader offers a solid, no-cost option for basic bulk data management tasks.
Whether you’re looking for Salesforce uploader tools, need help with Salesforce data loader tools, or are searching for the right Salesforce import tools, these two options provide a range of solutions for different levels of complexity in your Salesforce data management.
Dorian is a 5X Certified Salesforce Developer and Administrator with a start in the IT world as a CRM Admin in 2020. Since diving into Salesforce in 2021 via Trailhead and Focus on Force, he has achieved a Ranger Rank, earned several Superbadges, and bagged certifications including the Salesforce Certified Administrator, Platform App Builder, Associate and Platform Developer I by 2023. In 2024 he also became Salesforce Certified AI Associate. Dorian is very keen on continuous learning, always looks for fresh ways to improve his knowledge. He enjoys running, boxing, kickboxing and reading diverse kinds of books in his free time.